{
    "summary": {
        "snap": {
            "added": [],
            "removed": [],
            "diff": []
        },
        "deb": {
            "added": [
                "linux-headers-5.15.0-1084-kvm",
                "linux-image-5.15.0-1084-kvm",
                "linux-kvm-headers-5.15.0-1084",
                "linux-modules-5.15.0-1084-kvm"
            ],
            "removed": [
                "linux-headers-5.15.0-1083-kvm",
                "linux-image-5.15.0-1083-kvm",
                "linux-kvm-headers-5.15.0-1083",
                "linux-modules-5.15.0-1083-kvm"
            ],
            "diff": [
                "apport",
                "dirmngr",
                "gnupg",
                "gnupg-l10n",
                "gnupg-utils",
                "gpg",
                "gpg-agent",
                "gpg-wks-client",
                "gpg-wks-server",
                "gpgconf",
                "gpgsm",
                "gpgv",
                "libgnutls30",
                "libssh-4",
                "linux-headers-kvm",
                "linux-image-kvm",
                "linux-kvm",
                "python3-apport",
                "python3-problem-report",
                "ubuntu-advantage-tools",
                "ubuntu-pro-client",
                "ubuntu-pro-client-l10n"
            ]
        }
    },
    "diff": {
        "deb": [
            {
                "name": "apport",
                "from_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.8",
                    "version": "2.20.11-0ubuntu82.8"
                },
                "to_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.9",
                    "version": "2.20.11-0ubuntu82.9"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112466
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * SECURITY REGRESSION: exception during core dump handling (LP: #2112466)",
                            "    - data/apport: Catch FileNotFoundError when trying to open /proc/<pid>.",
                            ""
                        ],
                        "package": "apport",
                        "version": "2.20.11-0ubuntu82.9",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2112466
                        ],
                        "author": "Octavio Galland <octavio.galland@canonical.com>",
                        "date": "Tue, 08 Jul 2025 12:44:47 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "dirmngr",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gnupg",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gnupg-l10n",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gnupg-utils",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpg",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpg-agent",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpg-wks-client",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpg-wks-server",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpgconf",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpgsm",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "gpgv",
                "from_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.3",
                    "version": "2.2.27-3ubuntu2.3"
                },
                "to_version": {
                    "source_package_name": "gnupg2",
                    "source_package_version": "2.2.27-3ubuntu2.4",
                    "version": "2.2.27-3ubuntu2.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-30258",
                        "url": "https://ubuntu.com/security/CVE-2025-30258",
                        "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-19 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114775
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-30258",
                                "url": "https://ubuntu.com/security/CVE-2025-30258",
                                "cve_description": "In GnuPG before 2.5.5, if a user chooses to import a certificate with certain crafted subkey data that lacks a valid backsig or that has incorrect usage flags, the user loses the ability to verify signatures made from certain other signing keys, aka a \"verification DoS.\"",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-19 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * debian/patches/fix-key-validity-regression-due-to-CVE-2025-",
                            "    30258.patch:",
                            "    - Fix a key validity regression following patches for CVE-2025-30258,",
                            "      causing trusted \"certify-only\" primary keys to be ignored when checking",
                            "      signature on user IDs and computing key validity. This regression makes",
                            "      imported keys signed by a trusted \"certify-only\" key have an unknown",
                            "      validity (LP: #2114775).",
                            ""
                        ],
                        "package": "gnupg2",
                        "version": "2.2.27-3ubuntu2.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2114775
                        ],
                        "author": "dcpi <dcpi@u22vm>",
                        "date": "Wed, 25 Jun 2025 13:54:28 +0000"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "libgnutls30",
                "from_version": {
                    "source_package_name": "gnutls28",
                    "source_package_version": "3.7.3-4ubuntu1.6",
                    "version": "3.7.3-4ubuntu1.6"
                },
                "to_version": {
                    "source_package_name": "gnutls28",
                    "source_package_version": "3.7.3-4ubuntu1.7",
                    "version": "3.7.3-4ubuntu1.7"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-32988",
                        "url": "https://ubuntu.com/security/CVE-2025-32988",
                        "cve_description": "A flaw was found in GnuTLS. A double-free vulnerability exists in GnuTLS due to incorrect ownership handling in the export logic of Subject Alternative Name (SAN) entries containing an otherName. If the type-id OID is invalid or malformed, GnuTLS will call asn1_delete_structure() on an ASN.1 node it does not own, leading to a double-free condition when the parent function or caller later attempts to free the same structure.  This vulnerability can be triggered using only public GnuTLS APIs and may result in denial of service or memory corruption, depending on allocator behavior.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-10 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-32989",
                        "url": "https://ubuntu.com/security/CVE-2025-32989",
                        "cve_description": "A heap-buffer-overread vulnerability was found in GnuTLS in how it handles the Certificate Transparency (CT) Signed Certificate Timestamp (SCT) extension during X.509 certificate parsing. This flaw allows a malicious user to create a certificate containing a malformed SCT extension (OID 1.3.6.1.4.1.11129.2.4.2) that contains sensitive data. This issue leads to the exposure of confidential information when GnuTLS verifies certificates from certain websites when the certificate (SCT) is not checked correctly.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-10 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-32990",
                        "url": "https://ubuntu.com/security/CVE-2025-32990",
                        "cve_description": "A heap-buffer-overflow (off-by-one) flaw was found in the GnuTLS software in the template parsing logic within the certtool utility. When it reads certain settings from a template file, it allows an attacker to cause an out-of-bounds (OOB) NULL pointer write, resulting in memory corruption and a denial-of-service (DoS) that could potentially crash the system.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-10 10:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-6395",
                        "url": "https://ubuntu.com/security/CVE-2025-6395",
                        "cve_description": "A NULL pointer dereference flaw was found in the GnuTLS software in _gnutls_figure_common_ciphersuite().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-10 16:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-32988",
                                "url": "https://ubuntu.com/security/CVE-2025-32988",
                                "cve_description": "A flaw was found in GnuTLS. A double-free vulnerability exists in GnuTLS due to incorrect ownership handling in the export logic of Subject Alternative Name (SAN) entries containing an otherName. If the type-id OID is invalid or malformed, GnuTLS will call asn1_delete_structure() on an ASN.1 node it does not own, leading to a double-free condition when the parent function or caller later attempts to free the same structure.  This vulnerability can be triggered using only public GnuTLS APIs and may result in denial of service or memory corruption, depending on allocator behavior.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-10 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-32989",
                                "url": "https://ubuntu.com/security/CVE-2025-32989",
                                "cve_description": "A heap-buffer-overread vulnerability was found in GnuTLS in how it handles the Certificate Transparency (CT) Signed Certificate Timestamp (SCT) extension during X.509 certificate parsing. This flaw allows a malicious user to create a certificate containing a malformed SCT extension (OID 1.3.6.1.4.1.11129.2.4.2) that contains sensitive data. This issue leads to the exposure of confidential information when GnuTLS verifies certificates from certain websites when the certificate (SCT) is not checked correctly.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-10 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-32990",
                                "url": "https://ubuntu.com/security/CVE-2025-32990",
                                "cve_description": "A heap-buffer-overflow (off-by-one) flaw was found in the GnuTLS software in the template parsing logic within the certtool utility. When it reads certain settings from a template file, it allows an attacker to cause an out-of-bounds (OOB) NULL pointer write, resulting in memory corruption and a denial-of-service (DoS) that could potentially crash the system.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-10 10:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-6395",
                                "url": "https://ubuntu.com/security/CVE-2025-6395",
                                "cve_description": "A NULL pointer dereference flaw was found in the GnuTLS software in _gnutls_figure_common_ciphersuite().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-10 16:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * SECURITY UPDATE: double-free via otherName in the SAN",
                            "    - debian/patches/CVE-2025-32988.patch: avoid double free when exporting",
                            "      othernames in SAN in lib/x509/extensions.c.",
                            "    - CVE-2025-32988",
                            "  * SECURITY UPDATE: OOB read via malformed length field in SCT extension",
                            "    - debian/patches/CVE-2025-32989.patch: fix read buffer overrun in SCT",
                            "      timestamps in lib/x509/x509_ext.c.",
                            "    - CVE-2025-32989",
                            "  * SECURITY UPDATE: heap write overflow in certtool via invalid template",
                            "    - debian/patches/CVE-2025-32990.patch: avoid 1-byte write buffer",
                            "      overrun when parsing template in src/certtool-cfg.c,",
                            "      tests/cert-tests/Makefile.am, tests/cert-tests/template-test.sh,",
                            "      tests/cert-tests/templates/template-too-many-othernames.tmpl.",
                            "    - CVE-2025-32990",
                            "  * SECURITY UPDATE: NULL deref via missing PSK in TLS 1.3 handshake",
                            "    - debian/patches/CVE-2025-6395.patch: clear HSK_PSK_SELECTED when",
                            "      resetting binders in lib/handshake.c, lib/state.c, tests/Makefile.am,",
                            "      tests/tls13/hello_retry_request_psk.c.",
                            "    - CVE-2025-6395",
                            ""
                        ],
                        "package": "gnutls28",
                        "version": "3.7.3-4ubuntu1.7",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [],
                        "author": "Marc Deslauriers <marc.deslauriers@ubuntu.com>",
                        "date": "Fri, 11 Jul 2025 09:13:17 -0400"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "libssh-4",
                "from_version": {
                    "source_package_name": "libssh",
                    "source_package_version": "0.9.6-2ubuntu0.22.04.3",
                    "version": "0.9.6-2ubuntu0.22.04.3"
                },
                "to_version": {
                    "source_package_name": "libssh",
                    "source_package_version": "0.9.6-2ubuntu0.22.04.4",
                    "version": "0.9.6-2ubuntu0.22.04.4"
                },
                "cves": [
                    {
                        "cve": "CVE-2025-4877",
                        "url": "https://ubuntu.com/security/CVE-2025-4877",
                        "cve_description": "Write beyond bounds in binary to base64 conversion functions",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-06-25"
                    },
                    {
                        "cve": "CVE-2025-4878",
                        "url": "https://ubuntu.com/security/CVE-2025-4878",
                        "cve_description": "A vulnerability was found in libssh, where an uninitialized variable exists under certain conditions in the privatekey_from_file() function. This flaw can be triggered if the file specified by the filename doesn't exist and may lead to possible signing failures or heap corruption.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-22 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-5318",
                        "url": "https://ubuntu.com/security/CVE-2025-5318",
                        "cve_description": "A flaw was found in the libssh library. An out-of-bounds read can be triggered in the sftp_handle function due to an incorrect comparison check that permits the function to access memory beyond the valid handle list and to return an invalid pointer, which is used in further processing. This vulnerability allows an authenticated remote attacker to potentially read unintended memory regions, exposing sensitive information or affect service behavior.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-06-24 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-5372",
                        "url": "https://ubuntu.com/security/CVE-2025-5372",
                        "cve_description": "A flaw was found in libssh versions built with OpenSSL versions older than 3.0, specifically in the ssh_kdf() function responsible for key derivation. Due to inconsistent interpretation of return values where OpenSSL uses 0 to indicate failure and libssh uses 0 for success—the function may mistakenly return a success status even when key derivation fails. This results in uninitialized cryptographic key buffers being used in subsequent communication, potentially compromising SSH sessions' confidentiality, integrity, and availability.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-07-04 06:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2025-4877",
                                "url": "https://ubuntu.com/security/CVE-2025-4877",
                                "cve_description": "Write beyond bounds in binary to base64 conversion functions",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-06-25"
                            },
                            {
                                "cve": "CVE-2025-4878",
                                "url": "https://ubuntu.com/security/CVE-2025-4878",
                                "cve_description": "A vulnerability was found in libssh, where an uninitialized variable exists under certain conditions in the privatekey_from_file() function. This flaw can be triggered if the file specified by the filename doesn't exist and may lead to possible signing failures or heap corruption.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-22 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-5318",
                                "url": "https://ubuntu.com/security/CVE-2025-5318",
                                "cve_description": "A flaw was found in the libssh library. An out-of-bounds read can be triggered in the sftp_handle function due to an incorrect comparison check that permits the function to access memory beyond the valid handle list and to return an invalid pointer, which is used in further processing. This vulnerability allows an authenticated remote attacker to potentially read unintended memory regions, exposing sensitive information or affect service behavior.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-06-24 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-5372",
                                "url": "https://ubuntu.com/security/CVE-2025-5372",
                                "cve_description": "A flaw was found in libssh versions built with OpenSSL versions older than 3.0, specifically in the ssh_kdf() function responsible for key derivation. Due to inconsistent interpretation of return values where OpenSSL uses 0 to indicate failure and libssh uses 0 for success—the function may mistakenly return a success status even when key derivation fails. This results in uninitialized cryptographic key buffers being used in subsequent communication, potentially compromising SSH sessions' confidentiality, integrity, and availability.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-07-04 06:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * SECURITY UPDATE: Write beyond bounds in binary to base64 conversion",
                            "    functions",
                            "    - debian/patches/CVE-2025-4877.patch: prevent integer overflow and",
                            "      potential OOB.",
                            "    - CVE-2025-4877",
                            "  * SECURITY UPDATE: Use of uninitialized variable in",
                            "    privatekey_from_file()",
                            "    - debian/patches/CVE-2025-4878-1.patch: initialize pointers where",
                            "      possible.",
                            "    - debian/patches/CVE-2025-4878-2.patch: properly check return value to",
                            "      avoid NULL pointer dereference.",
                            "    - CVE-2025-4878",
                            "  * SECURITY UPDATE: OOB read in sftp_handle function",
                            "    - debian/patches/CVE-2025-5318.patch: fix possible buffer overrun.",
                            "    - CVE-2025-5318",
                            "  * SECURITY UPDATE: ssh_kdf() returns a success code on certain failures",
                            "    - debian/patches/CVE-2025-5372-pre1.patch: Reformat ssh_kdf().",
                            "    - debian/patches/CVE-2025-5372.patch: simplify error checking and",
                            "      handling of return codes in ssh_kdf().",
                            "    - CVE-2025-5372",
                            "  * SECURITY UPDATE: Missing packet filter may expose to variant of",
                            "    Terrapin attack",
                            "    - debian/patches/missing_packet_filter.patch: implement missing packet",
                            "      filter for DH GEX.",
                            "    - No CVE number",
                            ""
                        ],
                        "package": "libssh",
                        "version": "0.9.6-2ubuntu0.22.04.4",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [],
                        "author": "Marc Deslauriers <marc.deslauriers@ubuntu.com>",
                        "date": "Wed, 02 Jul 2025 14:48:47 -0400"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-headers-kvm",
                "from_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1083.79",
                    "version": "5.15.0.1083.79"
                },
                "to_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1084.80",
                    "version": "5.15.0.1084.80"
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Bump ABI 5.15.0-1084",
                            ""
                        ],
                        "package": "linux-meta-kvm",
                        "version": "5.15.0.1084.80",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 14:01:50 +0800"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-image-kvm",
                "from_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1083.79",
                    "version": "5.15.0.1083.79"
                },
                "to_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1084.80",
                    "version": "5.15.0.1084.80"
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Bump ABI 5.15.0-1084",
                            ""
                        ],
                        "package": "linux-meta-kvm",
                        "version": "5.15.0.1084.80",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 14:01:50 +0800"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-kvm",
                "from_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1083.79",
                    "version": "5.15.0.1083.79"
                },
                "to_version": {
                    "source_package_name": "linux-meta-kvm",
                    "source_package_version": "5.15.0.1084.80",
                    "version": "5.15.0.1084.80"
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Bump ABI 5.15.0-1084",
                            ""
                        ],
                        "package": "linux-meta-kvm",
                        "version": "5.15.0.1084.80",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 14:01:50 +0800"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "python3-apport",
                "from_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.8",
                    "version": "2.20.11-0ubuntu82.8"
                },
                "to_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.9",
                    "version": "2.20.11-0ubuntu82.9"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112466
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * SECURITY REGRESSION: exception during core dump handling (LP: #2112466)",
                            "    - data/apport: Catch FileNotFoundError when trying to open /proc/<pid>.",
                            ""
                        ],
                        "package": "apport",
                        "version": "2.20.11-0ubuntu82.9",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2112466
                        ],
                        "author": "Octavio Galland <octavio.galland@canonical.com>",
                        "date": "Tue, 08 Jul 2025 12:44:47 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "python3-problem-report",
                "from_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.8",
                    "version": "2.20.11-0ubuntu82.8"
                },
                "to_version": {
                    "source_package_name": "apport",
                    "source_package_version": "2.20.11-0ubuntu82.9",
                    "version": "2.20.11-0ubuntu82.9"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112466
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * SECURITY REGRESSION: exception during core dump handling (LP: #2112466)",
                            "    - data/apport: Catch FileNotFoundError when trying to open /proc/<pid>.",
                            ""
                        ],
                        "package": "apport",
                        "version": "2.20.11-0ubuntu82.9",
                        "urgency": "medium",
                        "distributions": "jammy-security",
                        "launchpad_bugs_fixed": [
                            2112466
                        ],
                        "author": "Octavio Galland <octavio.galland@canonical.com>",
                        "date": "Tue, 08 Jul 2025 12:44:47 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "ubuntu-advantage-tools",
                "from_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "35.1ubuntu0~22.04",
                    "version": "35.1ubuntu0~22.04"
                },
                "to_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "36ubuntu0~22.04",
                    "version": "36ubuntu0~22.04"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112382,
                    2112382,
                    2111610
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Backport 36ubuntu0 to jammy (LP: #2112382)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0~22.04",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2112382
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Tue, 24 Jun 2025 09:20:09 -0300"
                    },
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * d/apparmor/ubuntu_pro_esm_cache.jinja2: use openssl abstraction in the",
                            "    apparmor profile",
                            "  * New upstream release 36: (LP: #2112382)",
                            "    - api: display all available valid CVEs",
                            "    - attach: relax the onlySeries directive, so users can attach onlySeries",
                            "      tokens to all releases older than the target release",
                            "    - cli:",
                            "      + anbox-cloud: update installation instructions",
                            "      + collect-logs: do not overwrite the output file if it exists",
                            "      + cve/cves:",
                            "        * return all affected packages for a cve (LP: #2111610)",
                            "        * handle the case where the vulnerability data doesn't exist for the",
                            "          Ubuntu release",
                            "    - fips:",
                            "      + enable --access-only for all fips related services (GH: #3441)",
                            "      + allow enablement even when the -updates pocket is not available in the",
                            "        system (GH: #3439)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0",
                        "urgency": "medium",
                        "distributions": "questing",
                        "launchpad_bugs_fixed": [
                            2112382,
                            2111610
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Fri, 06 Jun 2025 11:08:26 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "ubuntu-pro-client",
                "from_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "35.1ubuntu0~22.04",
                    "version": "35.1ubuntu0~22.04"
                },
                "to_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "36ubuntu0~22.04",
                    "version": "36ubuntu0~22.04"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112382,
                    2112382,
                    2111610
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Backport 36ubuntu0 to jammy (LP: #2112382)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0~22.04",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2112382
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Tue, 24 Jun 2025 09:20:09 -0300"
                    },
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * d/apparmor/ubuntu_pro_esm_cache.jinja2: use openssl abstraction in the",
                            "    apparmor profile",
                            "  * New upstream release 36: (LP: #2112382)",
                            "    - api: display all available valid CVEs",
                            "    - attach: relax the onlySeries directive, so users can attach onlySeries",
                            "      tokens to all releases older than the target release",
                            "    - cli:",
                            "      + anbox-cloud: update installation instructions",
                            "      + collect-logs: do not overwrite the output file if it exists",
                            "      + cve/cves:",
                            "        * return all affected packages for a cve (LP: #2111610)",
                            "        * handle the case where the vulnerability data doesn't exist for the",
                            "          Ubuntu release",
                            "    - fips:",
                            "      + enable --access-only for all fips related services (GH: #3441)",
                            "      + allow enablement even when the -updates pocket is not available in the",
                            "        system (GH: #3439)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0",
                        "urgency": "medium",
                        "distributions": "questing",
                        "launchpad_bugs_fixed": [
                            2112382,
                            2111610
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Fri, 06 Jun 2025 11:08:26 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "ubuntu-pro-client-l10n",
                "from_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "35.1ubuntu0~22.04",
                    "version": "35.1ubuntu0~22.04"
                },
                "to_version": {
                    "source_package_name": "ubuntu-advantage-tools",
                    "source_package_version": "36ubuntu0~22.04",
                    "version": "36ubuntu0~22.04"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2112382,
                    2112382,
                    2111610
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Backport 36ubuntu0 to jammy (LP: #2112382)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0~22.04",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2112382
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Tue, 24 Jun 2025 09:20:09 -0300"
                    },
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * d/apparmor/ubuntu_pro_esm_cache.jinja2: use openssl abstraction in the",
                            "    apparmor profile",
                            "  * New upstream release 36: (LP: #2112382)",
                            "    - api: display all available valid CVEs",
                            "    - attach: relax the onlySeries directive, so users can attach onlySeries",
                            "      tokens to all releases older than the target release",
                            "    - cli:",
                            "      + anbox-cloud: update installation instructions",
                            "      + collect-logs: do not overwrite the output file if it exists",
                            "      + cve/cves:",
                            "        * return all affected packages for a cve (LP: #2111610)",
                            "        * handle the case where the vulnerability data doesn't exist for the",
                            "          Ubuntu release",
                            "    - fips:",
                            "      + enable --access-only for all fips related services (GH: #3441)",
                            "      + allow enablement even when the -updates pocket is not available in the",
                            "        system (GH: #3439)",
                            ""
                        ],
                        "package": "ubuntu-advantage-tools",
                        "version": "36ubuntu0",
                        "urgency": "medium",
                        "distributions": "questing",
                        "launchpad_bugs_fixed": [
                            2112382,
                            2111610
                        ],
                        "author": "Renan Rodrigo <renanrodrigo@canonical.com>",
                        "date": "Fri, 06 Jun 2025 11:08:26 -0300"
                    }
                ],
                "notes": null,
                "is_version_downgrade": false
            }
        ],
        "snap": []
    },
    "added": {
        "deb": [
            {
                "name": "linux-headers-5.15.0-1084-kvm",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1084.89",
                    "version": "5.15.0-1084.89"
                },
                "cves": [
                    {
                        "cve": "CVE-2022-49063",
                        "url": "https://ubuntu.com/security/CVE-2022-49063",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49168",
                        "url": "https://ubuntu.com/security/CVE-2022-49168",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46751",
                        "url": "https://ubuntu.com/security/CVE-2024-46751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22062",
                        "url": "https://ubuntu.com/security/CVE-2025-22062",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53203",
                        "url": "https://ubuntu.com/security/CVE-2024-53203",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35790",
                        "url": "https://ubuntu.com/security/CVE-2024-35790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37967",
                        "url": "https://ubuntu.com/security/CVE-2025-37967",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37992",
                        "url": "https://ubuntu.com/security/CVE-2025-37992",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-26 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37949",
                        "url": "https://ubuntu.com/security/CVE-2025-37949",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37969",
                        "url": "https://ubuntu.com/security/CVE-2025-37969",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37970",
                        "url": "https://ubuntu.com/security/CVE-2025-37970",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37964",
                        "url": "https://ubuntu.com/security/CVE-2025-37964",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-21546",
                        "url": "https://ubuntu.com/security/CVE-2022-21546",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37819",
                        "url": "https://ubuntu.com/security/CVE-2025-37819",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37905",
                        "url": "https://ubuntu.com/security/CVE-2025-37905",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38541",
                        "url": "https://ubuntu.com/security/CVE-2024-38541",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37909",
                        "url": "https://ubuntu.com/security/CVE-2025-37909",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37911",
                        "url": "https://ubuntu.com/security/CVE-2025-37911",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37912",
                        "url": "https://ubuntu.com/security/CVE-2025-37912",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37913",
                        "url": "https://ubuntu.com/security/CVE-2025-37913",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37914",
                        "url": "https://ubuntu.com/security/CVE-2025-37914",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37915",
                        "url": "https://ubuntu.com/security/CVE-2025-37915",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26739",
                        "url": "https://ubuntu.com/security/CVE-2024-26739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21839",
                        "url": "https://ubuntu.com/security/CVE-2025-21839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-07 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37923",
                        "url": "https://ubuntu.com/security/CVE-2025-37923",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37927",
                        "url": "https://ubuntu.com/security/CVE-2025-37927",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37990",
                        "url": "https://ubuntu.com/security/CVE-2025-37990",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37991",
                        "url": "https://ubuntu.com/security/CVE-2025-37991",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37930",
                        "url": "https://ubuntu.com/security/CVE-2025-37930",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49989",
                        "url": "https://ubuntu.com/security/CVE-2024-49989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37803",
                        "url": "https://ubuntu.com/security/CVE-2025-37803",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37983",
                        "url": "https://ubuntu.com/security/CVE-2025-37983",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37881",
                        "url": "https://ubuntu.com/security/CVE-2025-37881",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37805",
                        "url": "https://ubuntu.com/security/CVE-2025-37805",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37883",
                        "url": "https://ubuntu.com/security/CVE-2025-37883",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37808",
                        "url": "https://ubuntu.com/security/CVE-2025-37808",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37985",
                        "url": "https://ubuntu.com/security/CVE-2025-37985",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37810",
                        "url": "https://ubuntu.com/security/CVE-2025-37810",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37811",
                        "url": "https://ubuntu.com/security/CVE-2025-37811",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37812",
                        "url": "https://ubuntu.com/security/CVE-2025-37812",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37885",
                        "url": "https://ubuntu.com/security/CVE-2025-37885",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37817",
                        "url": "https://ubuntu.com/security/CVE-2025-37817",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37823",
                        "url": "https://ubuntu.com/security/CVE-2025-37823",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37797",
                        "url": "https://ubuntu.com/security/CVE-2025-37797",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37824",
                        "url": "https://ubuntu.com/security/CVE-2025-37824",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37989",
                        "url": "https://ubuntu.com/security/CVE-2025-37989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37829",
                        "url": "https://ubuntu.com/security/CVE-2025-37829",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37830",
                        "url": "https://ubuntu.com/security/CVE-2025-37830",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37836",
                        "url": "https://ubuntu.com/security/CVE-2025-37836",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37844",
                        "url": "https://ubuntu.com/security/CVE-2025-37844",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23144",
                        "url": "https://ubuntu.com/security/CVE-2025-23144",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23148",
                        "url": "https://ubuntu.com/security/CVE-2025-23148",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22027",
                        "url": "https://ubuntu.com/security/CVE-2025-22027",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50125",
                        "url": "https://ubuntu.com/security/CVE-2024-50125",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-05 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49535",
                        "url": "https://ubuntu.com/security/CVE-2022-49535",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:01:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35943",
                        "url": "https://ubuntu.com/security/CVE-2024-35943",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26686",
                        "url": "https://ubuntu.com/security/CVE-2024-26686",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-48893",
                        "url": "https://ubuntu.com/security/CVE-2022-48893",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-21 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50280",
                        "url": "https://ubuntu.com/security/CVE-2024-50280",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-54458",
                        "url": "https://ubuntu.com/security/CVE-2024-54458",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-27 03:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-42322",
                        "url": "https://ubuntu.com/security/CVE-2024-42322",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-17 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49960",
                        "url": "https://ubuntu.com/security/CVE-2024-49960",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-36908",
                        "url": "https://ubuntu.com/security/CVE-2024-36908",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-30 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21853",
                        "url": "https://ubuntu.com/security/CVE-2025-21853",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-12 10:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53128",
                        "url": "https://ubuntu.com/security/CVE-2024-53128",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                        "cve_priority": "negligible",
                        "cve_public_date": "2024-12-04 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35867",
                        "url": "https://ubuntu.com/security/CVE-2024-35867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52757",
                        "url": "https://ubuntu.com/security/CVE-2023-52757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-21 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46742",
                        "url": "https://ubuntu.com/security/CVE-2024-46742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52572",
                        "url": "https://ubuntu.com/security/CVE-2023-52572",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-03-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35866",
                        "url": "https://ubuntu.com/security/CVE-2024-35866",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46816",
                        "url": "https://ubuntu.com/security/CVE-2024-46816",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-27 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46774",
                        "url": "https://ubuntu.com/security/CVE-2024-46774",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38540",
                        "url": "https://ubuntu.com/security/CVE-2024-38540",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-27402",
                        "url": "https://ubuntu.com/security/CVE-2024-27402",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50272",
                        "url": "https://ubuntu.com/security/CVE-2024-50272",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50258",
                        "url": "https://ubuntu.com/security/CVE-2024-50258",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-09 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-56751",
                        "url": "https://ubuntu.com/security/CVE-2024-56751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-29 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23140",
                        "url": "https://ubuntu.com/security/CVE-2025-23140",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37765",
                        "url": "https://ubuntu.com/security/CVE-2025-37765",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37766",
                        "url": "https://ubuntu.com/security/CVE-2025-37766",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37767",
                        "url": "https://ubuntu.com/security/CVE-2025-37767",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37768",
                        "url": "https://ubuntu.com/security/CVE-2025-37768",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37770",
                        "url": "https://ubuntu.com/security/CVE-2025-37770",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37771",
                        "url": "https://ubuntu.com/security/CVE-2025-37771",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37773",
                        "url": "https://ubuntu.com/security/CVE-2025-37773",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37780",
                        "url": "https://ubuntu.com/security/CVE-2025-37780",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37781",
                        "url": "https://ubuntu.com/security/CVE-2025-37781",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37782",
                        "url": "https://ubuntu.com/security/CVE-2025-37782",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                        "cve_priority": "negligible",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-0927",
                        "url": "https://ubuntu.com/security/CVE-2025-0927",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-23 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37871",
                        "url": "https://ubuntu.com/security/CVE-2025-37871",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37787",
                        "url": "https://ubuntu.com/security/CVE-2025-37787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37788",
                        "url": "https://ubuntu.com/security/CVE-2025-37788",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37789",
                        "url": "https://ubuntu.com/security/CVE-2025-37789",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37790",
                        "url": "https://ubuntu.com/security/CVE-2025-37790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37875",
                        "url": "https://ubuntu.com/security/CVE-2025-37875",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37792",
                        "url": "https://ubuntu.com/security/CVE-2025-37792",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37867",
                        "url": "https://ubuntu.com/security/CVE-2025-37867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37982",
                        "url": "https://ubuntu.com/security/CVE-2025-37982",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37794",
                        "url": "https://ubuntu.com/security/CVE-2025-37794",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37796",
                        "url": "https://ubuntu.com/security/CVE-2025-37796",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37838",
                        "url": "https://ubuntu.com/security/CVE-2025-37838",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-18 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37940",
                        "url": "https://ubuntu.com/security/CVE-2025-37940",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23142",
                        "url": "https://ubuntu.com/security/CVE-2025-23142",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37892",
                        "url": "https://ubuntu.com/security/CVE-2025-37892",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23145",
                        "url": "https://ubuntu.com/security/CVE-2025-23145",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23146",
                        "url": "https://ubuntu.com/security/CVE-2025-23146",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37839",
                        "url": "https://ubuntu.com/security/CVE-2025-37839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23147",
                        "url": "https://ubuntu.com/security/CVE-2025-23147",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23150",
                        "url": "https://ubuntu.com/security/CVE-2025-23150",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23151",
                        "url": "https://ubuntu.com/security/CVE-2025-23151",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23156",
                        "url": "https://ubuntu.com/security/CVE-2025-23156",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23157",
                        "url": "https://ubuntu.com/security/CVE-2025-23157",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37840",
                        "url": "https://ubuntu.com/security/CVE-2025-37840",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23158",
                        "url": "https://ubuntu.com/security/CVE-2025-23158",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23159",
                        "url": "https://ubuntu.com/security/CVE-2025-23159",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37850",
                        "url": "https://ubuntu.com/security/CVE-2025-37850",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37851",
                        "url": "https://ubuntu.com/security/CVE-2025-37851",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23161",
                        "url": "https://ubuntu.com/security/CVE-2025-23161",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23163",
                        "url": "https://ubuntu.com/security/CVE-2025-23163",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37857",
                        "url": "https://ubuntu.com/security/CVE-2025-37857",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37738",
                        "url": "https://ubuntu.com/security/CVE-2025-37738",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37739",
                        "url": "https://ubuntu.com/security/CVE-2025-37739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37740",
                        "url": "https://ubuntu.com/security/CVE-2025-37740",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37741",
                        "url": "https://ubuntu.com/security/CVE-2025-37741",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37858",
                        "url": "https://ubuntu.com/security/CVE-2025-37858",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37742",
                        "url": "https://ubuntu.com/security/CVE-2025-37742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37859",
                        "url": "https://ubuntu.com/security/CVE-2025-37859",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37862",
                        "url": "https://ubuntu.com/security/CVE-2025-37862",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37841",
                        "url": "https://ubuntu.com/security/CVE-2025-37841",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37749",
                        "url": "https://ubuntu.com/security/CVE-2025-37749",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37756",
                        "url": "https://ubuntu.com/security/CVE-2025-37756",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37757",
                        "url": "https://ubuntu.com/security/CVE-2025-37757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37758",
                        "url": "https://ubuntu.com/security/CVE-2025-37758",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53051",
                        "url": "https://ubuntu.com/security/CVE-2024-53051",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46787",
                        "url": "https://ubuntu.com/security/CVE-2024-46787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37890",
                        "url": "https://ubuntu.com/security/CVE-2025-37890",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-16 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37997",
                        "url": "https://ubuntu.com/security/CVE-2025-37997",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-29 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37798",
                        "url": "https://ubuntu.com/security/CVE-2025-37798",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37750",
                        "url": "https://ubuntu.com/security/CVE-2025-37750",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53185",
                        "url": "https://ubuntu.com/security/CVE-2024-53185",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50047",
                        "url": "https://ubuntu.com/security/CVE-2024-50047",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                        "cve_priority": "high",
                        "cve_public_date": "2024-10-21 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114567,
                    2114581,
                    2112440,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2107516,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    1786013
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2022-49063",
                                "url": "https://ubuntu.com/security/CVE-2022-49063",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49168",
                                "url": "https://ubuntu.com/security/CVE-2022-49168",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46751",
                                "url": "https://ubuntu.com/security/CVE-2024-46751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22062",
                                "url": "https://ubuntu.com/security/CVE-2025-22062",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53203",
                                "url": "https://ubuntu.com/security/CVE-2024-53203",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35790",
                                "url": "https://ubuntu.com/security/CVE-2024-35790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37967",
                                "url": "https://ubuntu.com/security/CVE-2025-37967",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37992",
                                "url": "https://ubuntu.com/security/CVE-2025-37992",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-26 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37949",
                                "url": "https://ubuntu.com/security/CVE-2025-37949",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37969",
                                "url": "https://ubuntu.com/security/CVE-2025-37969",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37970",
                                "url": "https://ubuntu.com/security/CVE-2025-37970",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37964",
                                "url": "https://ubuntu.com/security/CVE-2025-37964",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-21546",
                                "url": "https://ubuntu.com/security/CVE-2022-21546",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37819",
                                "url": "https://ubuntu.com/security/CVE-2025-37819",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37905",
                                "url": "https://ubuntu.com/security/CVE-2025-37905",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38541",
                                "url": "https://ubuntu.com/security/CVE-2024-38541",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37909",
                                "url": "https://ubuntu.com/security/CVE-2025-37909",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37911",
                                "url": "https://ubuntu.com/security/CVE-2025-37911",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37912",
                                "url": "https://ubuntu.com/security/CVE-2025-37912",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37913",
                                "url": "https://ubuntu.com/security/CVE-2025-37913",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37914",
                                "url": "https://ubuntu.com/security/CVE-2025-37914",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37915",
                                "url": "https://ubuntu.com/security/CVE-2025-37915",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26739",
                                "url": "https://ubuntu.com/security/CVE-2024-26739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21839",
                                "url": "https://ubuntu.com/security/CVE-2025-21839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-07 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37923",
                                "url": "https://ubuntu.com/security/CVE-2025-37923",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37927",
                                "url": "https://ubuntu.com/security/CVE-2025-37927",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37990",
                                "url": "https://ubuntu.com/security/CVE-2025-37990",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37991",
                                "url": "https://ubuntu.com/security/CVE-2025-37991",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37930",
                                "url": "https://ubuntu.com/security/CVE-2025-37930",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49989",
                                "url": "https://ubuntu.com/security/CVE-2024-49989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37803",
                                "url": "https://ubuntu.com/security/CVE-2025-37803",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37983",
                                "url": "https://ubuntu.com/security/CVE-2025-37983",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37881",
                                "url": "https://ubuntu.com/security/CVE-2025-37881",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37805",
                                "url": "https://ubuntu.com/security/CVE-2025-37805",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37883",
                                "url": "https://ubuntu.com/security/CVE-2025-37883",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37808",
                                "url": "https://ubuntu.com/security/CVE-2025-37808",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37985",
                                "url": "https://ubuntu.com/security/CVE-2025-37985",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37810",
                                "url": "https://ubuntu.com/security/CVE-2025-37810",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37811",
                                "url": "https://ubuntu.com/security/CVE-2025-37811",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37812",
                                "url": "https://ubuntu.com/security/CVE-2025-37812",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37885",
                                "url": "https://ubuntu.com/security/CVE-2025-37885",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37817",
                                "url": "https://ubuntu.com/security/CVE-2025-37817",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37823",
                                "url": "https://ubuntu.com/security/CVE-2025-37823",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37797",
                                "url": "https://ubuntu.com/security/CVE-2025-37797",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37824",
                                "url": "https://ubuntu.com/security/CVE-2025-37824",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37989",
                                "url": "https://ubuntu.com/security/CVE-2025-37989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37829",
                                "url": "https://ubuntu.com/security/CVE-2025-37829",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37830",
                                "url": "https://ubuntu.com/security/CVE-2025-37830",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37836",
                                "url": "https://ubuntu.com/security/CVE-2025-37836",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37844",
                                "url": "https://ubuntu.com/security/CVE-2025-37844",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23144",
                                "url": "https://ubuntu.com/security/CVE-2025-23144",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23148",
                                "url": "https://ubuntu.com/security/CVE-2025-23148",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22027",
                                "url": "https://ubuntu.com/security/CVE-2025-22027",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50125",
                                "url": "https://ubuntu.com/security/CVE-2024-50125",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-05 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49535",
                                "url": "https://ubuntu.com/security/CVE-2022-49535",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:01:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35943",
                                "url": "https://ubuntu.com/security/CVE-2024-35943",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26686",
                                "url": "https://ubuntu.com/security/CVE-2024-26686",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-48893",
                                "url": "https://ubuntu.com/security/CVE-2022-48893",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-21 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50280",
                                "url": "https://ubuntu.com/security/CVE-2024-50280",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-54458",
                                "url": "https://ubuntu.com/security/CVE-2024-54458",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-27 03:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-42322",
                                "url": "https://ubuntu.com/security/CVE-2024-42322",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-17 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49960",
                                "url": "https://ubuntu.com/security/CVE-2024-49960",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-36908",
                                "url": "https://ubuntu.com/security/CVE-2024-36908",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-30 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21853",
                                "url": "https://ubuntu.com/security/CVE-2025-21853",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-12 10:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53128",
                                "url": "https://ubuntu.com/security/CVE-2024-53128",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                                "cve_priority": "negligible",
                                "cve_public_date": "2024-12-04 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35867",
                                "url": "https://ubuntu.com/security/CVE-2024-35867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52757",
                                "url": "https://ubuntu.com/security/CVE-2023-52757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-21 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46742",
                                "url": "https://ubuntu.com/security/CVE-2024-46742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52572",
                                "url": "https://ubuntu.com/security/CVE-2023-52572",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-03-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35866",
                                "url": "https://ubuntu.com/security/CVE-2024-35866",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46816",
                                "url": "https://ubuntu.com/security/CVE-2024-46816",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-27 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46774",
                                "url": "https://ubuntu.com/security/CVE-2024-46774",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38540",
                                "url": "https://ubuntu.com/security/CVE-2024-38540",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-27402",
                                "url": "https://ubuntu.com/security/CVE-2024-27402",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50272",
                                "url": "https://ubuntu.com/security/CVE-2024-50272",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50258",
                                "url": "https://ubuntu.com/security/CVE-2024-50258",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-09 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-56751",
                                "url": "https://ubuntu.com/security/CVE-2024-56751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-29 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23140",
                                "url": "https://ubuntu.com/security/CVE-2025-23140",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37765",
                                "url": "https://ubuntu.com/security/CVE-2025-37765",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37766",
                                "url": "https://ubuntu.com/security/CVE-2025-37766",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37767",
                                "url": "https://ubuntu.com/security/CVE-2025-37767",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37768",
                                "url": "https://ubuntu.com/security/CVE-2025-37768",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37770",
                                "url": "https://ubuntu.com/security/CVE-2025-37770",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37771",
                                "url": "https://ubuntu.com/security/CVE-2025-37771",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37773",
                                "url": "https://ubuntu.com/security/CVE-2025-37773",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37780",
                                "url": "https://ubuntu.com/security/CVE-2025-37780",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37781",
                                "url": "https://ubuntu.com/security/CVE-2025-37781",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37782",
                                "url": "https://ubuntu.com/security/CVE-2025-37782",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                                "cve_priority": "negligible",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-0927",
                                "url": "https://ubuntu.com/security/CVE-2025-0927",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-23 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37871",
                                "url": "https://ubuntu.com/security/CVE-2025-37871",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37787",
                                "url": "https://ubuntu.com/security/CVE-2025-37787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37788",
                                "url": "https://ubuntu.com/security/CVE-2025-37788",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37789",
                                "url": "https://ubuntu.com/security/CVE-2025-37789",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37790",
                                "url": "https://ubuntu.com/security/CVE-2025-37790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37875",
                                "url": "https://ubuntu.com/security/CVE-2025-37875",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37792",
                                "url": "https://ubuntu.com/security/CVE-2025-37792",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37867",
                                "url": "https://ubuntu.com/security/CVE-2025-37867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37982",
                                "url": "https://ubuntu.com/security/CVE-2025-37982",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37794",
                                "url": "https://ubuntu.com/security/CVE-2025-37794",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37796",
                                "url": "https://ubuntu.com/security/CVE-2025-37796",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37838",
                                "url": "https://ubuntu.com/security/CVE-2025-37838",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-18 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37940",
                                "url": "https://ubuntu.com/security/CVE-2025-37940",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23142",
                                "url": "https://ubuntu.com/security/CVE-2025-23142",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37892",
                                "url": "https://ubuntu.com/security/CVE-2025-37892",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23145",
                                "url": "https://ubuntu.com/security/CVE-2025-23145",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23146",
                                "url": "https://ubuntu.com/security/CVE-2025-23146",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37839",
                                "url": "https://ubuntu.com/security/CVE-2025-37839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23147",
                                "url": "https://ubuntu.com/security/CVE-2025-23147",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23150",
                                "url": "https://ubuntu.com/security/CVE-2025-23150",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23151",
                                "url": "https://ubuntu.com/security/CVE-2025-23151",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23156",
                                "url": "https://ubuntu.com/security/CVE-2025-23156",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23157",
                                "url": "https://ubuntu.com/security/CVE-2025-23157",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37840",
                                "url": "https://ubuntu.com/security/CVE-2025-37840",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23158",
                                "url": "https://ubuntu.com/security/CVE-2025-23158",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23159",
                                "url": "https://ubuntu.com/security/CVE-2025-23159",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37850",
                                "url": "https://ubuntu.com/security/CVE-2025-37850",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37851",
                                "url": "https://ubuntu.com/security/CVE-2025-37851",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23161",
                                "url": "https://ubuntu.com/security/CVE-2025-23161",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23163",
                                "url": "https://ubuntu.com/security/CVE-2025-23163",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37857",
                                "url": "https://ubuntu.com/security/CVE-2025-37857",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37738",
                                "url": "https://ubuntu.com/security/CVE-2025-37738",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37739",
                                "url": "https://ubuntu.com/security/CVE-2025-37739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37740",
                                "url": "https://ubuntu.com/security/CVE-2025-37740",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37741",
                                "url": "https://ubuntu.com/security/CVE-2025-37741",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37858",
                                "url": "https://ubuntu.com/security/CVE-2025-37858",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37742",
                                "url": "https://ubuntu.com/security/CVE-2025-37742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37859",
                                "url": "https://ubuntu.com/security/CVE-2025-37859",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37862",
                                "url": "https://ubuntu.com/security/CVE-2025-37862",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37841",
                                "url": "https://ubuntu.com/security/CVE-2025-37841",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37749",
                                "url": "https://ubuntu.com/security/CVE-2025-37749",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37756",
                                "url": "https://ubuntu.com/security/CVE-2025-37756",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37757",
                                "url": "https://ubuntu.com/security/CVE-2025-37757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37758",
                                "url": "https://ubuntu.com/security/CVE-2025-37758",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53051",
                                "url": "https://ubuntu.com/security/CVE-2024-53051",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46787",
                                "url": "https://ubuntu.com/security/CVE-2024-46787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37890",
                                "url": "https://ubuntu.com/security/CVE-2025-37890",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-16 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37997",
                                "url": "https://ubuntu.com/security/CVE-2025-37997",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-29 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37798",
                                "url": "https://ubuntu.com/security/CVE-2025-37798",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37750",
                                "url": "https://ubuntu.com/security/CVE-2025-37750",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53185",
                                "url": "https://ubuntu.com/security/CVE-2024-53185",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50047",
                                "url": "https://ubuntu.com/security/CVE-2024-50047",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                                "cve_priority": "high",
                                "cve_public_date": "2024-10-21 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * jammy/linux-kvm: 5.15.0-1084.89 -proposed tracker (LP: #2114567)",
                            "",
                            "  [ Ubuntu: 5.15.0-144.157 ]",
                            "",
                            "  * jammy/linux: 5.15.0-144.157 -proposed tracker (LP: #2114581)",
                            "  * cifs: NULL pointer dereference in refresh_cache_worker (LP: #2112440)",
                            "    - cifs: fix NULL ptr dereference in refresh_mounts()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581)",
                            "    - platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection",
                            "    - tracing: probes: Fix a possible race in trace_probe_log APIs",
                            "    - iio: adc: ad7768-1: Fix insufficient alignment of timestamp.",
                            "    - iio: chemical: sps30: use aligned_s64 for timestamp",
                            "    - RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug",
                            "    - nfs: handle failure of nfs_get_lock_context in unlock path",
                            "    - spi: loopback-test: Do not split 1024-byte hexdumps",
                            "    - net: cadence: macb: Fix a possible deadlock in macb_halt_tx.",
                            "    - net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING",
                            "    - ALSA: sh: SND_AICA should depend on SH_DMA_API",
                            "    - qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd()",
                            "    - NFSv4/pnfs: Reset the layout state after a layoutreturn",
                            "    - x86,nospec: Simplify {JMP,CALL}_NOSPEC",
                            "    - x86/speculation: Simplify and make CALL_NOSPEC consistent",
                            "    - x86/speculation: Add a conditional CS prefix to CALL_NOSPEC",
                            "    - x86/speculation: Remove the extra #ifdef around CALL_NOSPEC",
                            "    - Documentation: x86/bugs/its: Add ITS documentation",
                            "    - x86/its: Enumerate Indirect Target Selection (ITS) bug",
                            "    - x86/its: Add support for ITS-safe indirect thunk",
                            "    - [Config] enable ITS mitigation",
                            "    - x86/alternative: Optimize returns patching",
                            "    - x86/alternatives: Remove faulty optimization",
                            "    - x86/its: Add support for ITS-safe return thunk",
                            "    - x86/its: Enable Indirect Target Selection mitigation",
                            "    - x86/its: Add \"vmexit\" option to skip mitigation on some CPUs",
                            "    - x86/its: Align RETs in BHB clear sequence to avoid thunking",
                            "    - x86/its: Use dynamic thunks for indirect branches",
                            "    - x86/its: Fix build errors when CONFIG_MODULES=n",
                            "    - x86/its: FineIBT-paranoid vs ITS",
                            "    - dmaengine: Revert \"dmaengine: dmatest: Fix dmatest waiting less when",
                            "      interrupted\"",
                            "    - btrfs: fix discard worker infinite loop after disabling discard",
                            "    - ACPI: PPTT: Fix processor subtable walk",
                            "    - ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()",
                            "    - ALSA: usb-audio: Add sample rate quirk for Audioengine D1",
                            "    - ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera",
                            "    - ftrace: Fix preemption accounting for stacktrace trigger command",
                            "    - ftrace: Fix preemption accounting for stacktrace filter command",
                            "    - tracing: samples: Initialize trace_array_printk() with the correct",
                            "      function",
                            "    - phy: Fix error handling in tegra_xusb_port_init",
                            "    - phy: renesas: rcar-gen3-usb2: Set timing registers only once",
                            "    - wifi: mt76: disable napi on driver removal",
                            "    - dmaengine: ti: k3-udma: Add missing locking",
                            "    - dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure",
                            "      instead of a local copy",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_engines",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_groups",
                            "    - block: fix direct io NOWAIT flag not work",
                            "    - clocksource/i8253: Use raw_spinlock_irqsave() in",
                            "      clockevent_i8253_disable()",
                            "    - usb: typec: fix pm usage counter imbalance in ucsi_ccg_sync_control()",
                            "    - selftests/mm: compaction_test: support platform with huge mount of",
                            "      memory",
                            "    - netfilter: nf_tables: pass nft_chain to destroy function, not nft_ctx",
                            "    - netfilter: nf_tables: wait for rcu grace period on net_device removal",
                            "    - netfilter: nf_tables: do not defer rule destruction via call_rcu",
                            "    - x86/modules: Set VM_FLUSH_RESET_PERMS in module_alloc()",
                            "    - Linux 5.15.184",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49063",
                            "    - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49168",
                            "    - btrfs: do not clean up repair bio if submit fails",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-46751",
                            "    - btrfs: don't BUG_ON() when 0 reference count at",
                            "      btrfs_lookup_extent_info()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-22062",
                            "    - sctp: add mutual exclusion in proc_sctp_do_udp_port()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-53203",
                            "    - usb: typec: fix potential array underflow in ucsi_ccg_sync_control()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-35790",
                            "    - usb: typec: altmodes/displayport: create sysfs nodes as driver's default",
                            "      device attribute group",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37967",
                            "    - usb: typec: ucsi: displayport: Fix deadlock",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37992",
                            "    - net_sched: Flush gso_skb list too during ->change()",
                            "  * Mounting btrfs LVM volumes changes mountpoint location and breaks lsblk",
                            "    output (LP: #2107516)",
                            "    - SAUCE: Revert \"btrfs: avoid unnecessary device path update for the same",
                            "      device\"",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705)",
                            "    - can: mcan: m_can_class_unregister(): fix order of unregistration calls",
                            "    - can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls",
                            "    - openvswitch: Fix unsafe attribute parsing in output_userspace()",
                            "    - gre: Fix again IPv6 link-local address generation.",
                            "    - can: gw: use call_rcu() instead of costly synchronize_rcu()",
                            "    - rcu/kvfree: Add kvfree_rcu_mightsleep() and kfree_rcu_mightsleep()",
                            "    - can: gw: fix RCU/BH usage in cgw_create_job()",
                            "    - net: dsa: b53: allow leaky reserved multicast",
                            "    - net: dsa: b53: fix clearing PVID of a port",
                            "    - net: dsa: b53: fix flushing old pvid VLAN on pvid change",
                            "    - net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave",
                            "    - net: dsa: b53: always rejoin default untagged VLAN on bridge leave",
                            "    - net: dsa: b53: fix learning on VLAN unaware bridges",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30-D",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30L-G",
                            "    - Input: synaptics - enable InterTouch on Dell Precision M3800",
                            "    - Input: synaptics - enable SMBus for HP Elitebook 850 G1",
                            "    - Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5",
                            "    - staging: iio: adc: ad7816: Correct conditional logic for store mode",
                            "    - staging: axis-fifo: Remove hardware resets for user errors",
                            "    - staging: axis-fifo: Correct handling of tx_fifo_depth for size",
                            "      validation",
                            "    - iio: adc: ad7606: fix serial register access",
                            "    - iio: adis16201: Correct inclinometer channel resolution",
                            "    - drm/amd/display: Fix wrong handling for AUX_DEFER case",
                            "    - usb: uhci-platform: Make the clock really optional",
                            "    - module: ensure that kobject_put() is safe for module type kobjects",
                            "    - ocfs2: switch osb->disable_recovery to enum",
                            "    - ocfs2: implement handshaking with ocfs2 recovery thread",
                            "    - ocfs2: stop quota recovery before disabling quotas",
                            "    - usb: cdnsp: Fix issue with resuming from L1",
                            "    - usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version",
                            "    - usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN",
                            "    - usb: host: tegra: Prevent host controller crash when OTG port is used",
                            "    - usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition",
                            "    - usb: typec: ucsi: displayport: Fix NULL pointer access",
                            "    - USB: usbtmc: use interruptible sleep in usbtmc_read",
                            "    - usb: usbtmc: Fix erroneous get_stb ioctl error returns",
                            "    - usb: usbtmc: Fix erroneous wait_srq ioctl return",
                            "    - usb: usbtmc: Fix erroneous generic_read ioctl return",
                            "    - types: Complement the aligned types with signed 64-bit one",
                            "    - iio: adc: dln2: Use aligned_s64 for timestamp",
                            "    - MIPS: Fix MAX_REG_OFFSET",
                            "    - drm/panel: simple: Update timings for AUO G101EVN010",
                            "    - nvme: unblock ctrl state transition for firmware update",
                            "    - do_umount(): add missing barrier before refcount checks in sync case",
                            "    - x86/bpf: Call branch history clearing sequence on exit",
                            "    - x86/bpf: Add IBHF call at end of classic BPF",
                            "    - x86/bhi: Do not set BHI_DIS_S in 32-bit mode",
                            "    - Linux 5.15.183",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37949",
                            "    - xenbus: Use kref to track req lifetime",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37969",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37970",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37964",
                            "    - x86/mm: Eliminate window where TLB flushes may be inadvertently skipped",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618)",
                            "    - ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset",
                            "    - EDAC/altera: Test the correct error reg offset",
                            "    - EDAC/altera: Set DDR and SDMMC interrupt mask before registration",
                            "    - i2c: imx-lpi2c: Fix clock count when probe defers",
                            "    - arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays",
                            "    - amd-xgbe: Fix to ensure dependent features are toggled with RX checksum",
                            "      offload",
                            "    - mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe",
                            "    - dm-integrity: fix a warning on invalid table line",
                            "    - dm: always update the array size in realloc_argv on success",
                            "    - iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)",
                            "    - net/mlx5: E-Switch, Initialize MAC Address for Default GID",
                            "    - net/mlx5: E-switch, Fix error handling for enabling roce",
                            "    - net: ethernet: mtk-star-emac: separate tx/rx handling with two NAPIs",
                            "    - net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx",
                            "      poll",
                            "    - net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when",
                            "      advised",
                            "    - ice: Refactor promiscuous functions",
                            "    - net: dlink: Correct endianness handling of led_mode",
                            "    - net: ipv6: fix UDPv6 GSO segmentation with NAT",
                            "    - bnxt_en: Fix coredump logic to free allocated buffer",
                            "    - bnxt_en: Fix ethtool -d byte order for 32-bit values",
                            "    - nvme-tcp: fix premature queue removal and I/O failover",
                            "    - net: fec: ERR007885 Workaround for conventional TX",
                            "    - net: hns3: store rx VLAN tag offload state for VF",
                            "    - net: hns3: add support for external loopback test",
                            "    - net: hns3: fix an interrupt residual problem",
                            "    - net: hns3: fixed debugfs tm_qset size",
                            "    - net: hns3: defer calling ptp_clock_register()",
                            "    - PCI: imx6: Skip controller_id generation logic for i.MX7D",
                            "    - net: hns3: fix deadlock issue when externel_lb and reset are executed",
                            "      together",
                            "    - ARM: dts: opos6ul: add ksz8081 phy properties",
                            "    - Revert \"drm/meson: vclk: fix calculation of 59.94 fractional rates\"",
                            "    - irqchip/gic-v2m: Add const to of_device_id",
                            "    - irqchip/gic-v2m: Mark a few functions __init",
                            "    - iommu/arm-smmu-v3: Use the new rb tree helpers",
                            "    - iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream",
                            "      ids",
                            "    - dm: fix copying after src array boundaries",
                            "    - Linux 5.15.182",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2022-21546",
                            "    - scsi: target: Fix WRITE_SAME No Data Buffer crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37819",
                            "    - irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37905",
                            "    - firmware: arm_scmi: Balance device refcount when destroying devices",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-38541",
                            "    - of: module: add buffer overflow check in of_modalias()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37909",
                            "    - net: lan743x: Fix memleak issue when GSO enabled",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37911",
                            "    - bnxt_en: Fix out-of-bound memcpy() during ethtool -w",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37912",
                            "    - ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37913",
                            "    - net_sched: qfq: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37914",
                            "    - net_sched: ets: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37915",
                            "    - net_sched: drr: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-26739",
                            "    - net/sched: act_mirred: don't override retval if we already lost the skb",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-21839",
                            "    - KVM: x86: Load DR6 with guest value only before entering .vcpu_run()",
                            "      loop",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37923",
                            "    - tracing: Fix oob write in trace_seq_to_buffer()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37927",
                            "    - iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37990",
                            "    - wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37991",
                            "    - parisc: Fix double SIGFPE crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37930",
                            "    - drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606)",
                            "    - net: ethtool: Don't call .cleanup_data when prepare_data fails",
                            "    - ata: sata_sx4: Drop pointless VPRINTK() calls and convert the remaining",
                            "      ones",
                            "    - ata: sata_sx4: Add error handling in pdc20621_i2c_read()",
                            "    - nvmet-fcloop: swap list_add_tail arguments",
                            "    - nft_set_pipapo: fix incorrect avx2 match of 5th field octet",
                            "    - umount: Allow superblock owners to force umount",
                            "    - x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD",
                            "      when running in a virtual machine",
                            "    - perf: arm_pmu: Don't disable counter in armpmu_add()",
                            "    - arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD",
                            "    - xen/mcelog: Add __nonstring annotations for unterminated strings",
                            "    - HID: pidff: Convert infinite length from Linux API to PID standard",
                            "    - HID: pidff: Do not send effect envelope if it's empty",
                            "    - ALSA: hda: intel: Fix Optimus when GPU has no sound",
                            "    - ASoC: fsl_audmix: register card device depends on 'dais' property",
                            "    - ALSA: usb-audio: Fix CME quirk for UF series keyboards",
                            "    - fs/jfs: cast inactags to s64 to prevent potential overflow",
                            "    - ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode",
                            "    - ahci: add PCI ID for Marvell 88SE9215 SATA Controller",
                            "    - ext4: protect ext4_release_dquot against freezing",
                            "    - wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table",
                            "    - tracing: fix return value in __ftrace_event_enable_disable for",
                            "      TRACE_REG_UNREGISTER",
                            "    - Bluetooth: hci_uart: fix race during initialization",
                            "    - drm: allow encoder mode_set even when connectors change for crtc",
                            "    - drm/amd/display: Update Cursor request mode to the beginning prefetch",
                            "      always",
                            "    - drm: panel-orientation-quirks: Add support for AYANEO 2S",
                            "    - drm: panel-orientation-quirks: Add new quirk for GPD Win 2",
                            "    - drm/bridge: panel: forbid initializing a panel with unknown connector",
                            "      type",
                            "    - drivers: base: devres: Allow to release group on device release",
                            "    - drm/amdkfd: clamp queue size to minimum",
                            "    - drm/amdkfd: Fix pqm_destroy_queue race with GPU reset",
                            "    - drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off",
                            "    - ktest: Fix Test Failures Due to Missing LOG_FILE Directories",
                            "    - pwm: rcar: Simplify multiplication/shift logic",
                            "    - pwm: rcar: Improve register calculation",
                            "    - pwm: fsl-ftm: Handle clk_get_rate() returning 0",
                            "    - bpf: Add endian modifiers to fix endian warnings",
                            "    - bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags",
                            "    - ext4: don't treat fhandle lookup of ea_inode as FS corruption",
                            "    - media: i2c: adv748x: Fix test pattern selection mask",
                            "    - media: vim2m: print device name after registering device",
                            "    - media: siano: Fix error handling in smsdvb_module_init()",
                            "    - xenfs/xensyms: respect hypervisor's \"next\" indication",
                            "    - arm64: cputype: Add MIDR_CORTEX_A76AE",
                            "    - arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list",
                            "    - arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB",
                            "    - arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe",
                            "      list",
                            "    - spi: cadence-qspi: Fix probe on AM62A LP SK",
                            "    - media: streamzap: prevent processing IR data on URB failure",
                            "    - media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in remove",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in probe",
                            "    - media: i2c: ov7251: Set enable GPIO low in probe",
                            "    - media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO",
                            "    - mtd: Add check for devm_kcalloc()",
                            "    - net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320",
                            "      family",
                            "    - mtd: Replace kcalloc() with devm_kcalloc()",
                            "    - clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init",
                            "      wakeup",
                            "    - wifi: mt76: Add check for devm_kstrdup()",
                            "    - wifi: mac80211: fix integer overflow in hwmp_route_info_get()",
                            "    - ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path",
                            "    - vdpa/mlx5: Fix oversized null mkey longer than 32bit",
                            "    - i3c: master: svc: Use readsb helper for reading MDB",
                            "    - locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()",
                            "    - lib: scatterlist: fix sg_split_phys to preserve original scatterlist",
                            "      offsets",
                            "    - mptcp: only inc MPJoinAckHMacFailure for HMAC failures",
                            "    - mtd: rawnand: Add status chack in r852_ready()",
                            "    - arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string",
                            "    - sparc/mm: disable preemption in lazy mmu mode",
                            "    - mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock",
                            "    - mm/hwpoison: do not send SIGBUS to processes with recovered clean pages",
                            "    - thermal/drivers/rockchip: Add missing rk3328 mapping entry",
                            "    - crypto: ccp - Fix check for the primary ASP device",
                            "    - dm-integrity: set ti->error on memory allocation failure",
                            "    - gpio: zynq: Fix wakeup source leaks on device unbind",
                            "    - ntb: use 64-bit arithmetic for the MSI doorbell mask",
                            "    - of/irq: Fix device node refcount leakages in of_irq_count()",
                            "    - of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()",
                            "    - of/irq: Fix device node refcount leakages in of_irq_init()",
                            "    - PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()",
                            "    - PCI: Fix reference leak in pci_alloc_child_bus()",
                            "    - pinctrl: qcom: Clear latched interrupt status when changing IRQ type",
                            "    - arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected()",
                            "      lists",
                            "    - ACPI: platform-profile: Fix CFI violation when accessing sysfs files",
                            "    - x86/e820: Fix handling of subpage regions when calculating nosave ranges",
                            "      in e820__register_nosave_regions()",
                            "    - Bluetooth: hci_uart: Fix another race during initialization",
                            "    - scsi: hisi_sas: Start delivery hisi_sas_task_exec() directly",
                            "    - scsi: hisi_sas: Pass abort structure for internal abort",
                            "    - scsi: hisi_sas: Factor out task prep and delivery code",
                            "    - scsi: hisi_sas: Fix setting of hisi_sas_slot.is_internal",
                            "    - scsi: libsas: Delete lldd_clear_aca callback",
                            "    - scsi: libsas: Add struct sas_tmf_task",
                            "    - scsi: hisi_sas: Enable force phy when SATA disk directly connected",
                            "    - wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()",
                            "    - scsi: iscsi: Fix missing scsi_host_put() in error path",
                            "    - md/raid10: fix missing discard IO accounting",
                            "    - RDMA/usnic: Fix passing zero to PTR_ERR in usnic_ib_pci_probe()",
                            "    - RDMA/hns: Fix wrong maximum DMA segment size",
                            "    - Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid",
                            "      address",
                            "    - Bluetooth: l2cap: Check encryption key size on incoming connection",
                            "    - Revert \"wifi: mac80211: Update skb's control block key in",
                            "      ieee80211_tx_dequeue()\"",
                            "    - igc: move ktime snapshot into PTM retry loop",
                            "    - igc: handle the IGC_PTP_ENABLED flag correctly",
                            "    - igc: cleanup PTP module if probe fails",
                            "    - net: b53: enable BPDU reception for management port",
                            "    - net: dsa: avoid refcount warnings when ds->ops->tag_8021q_vlan_del()",
                            "      fails",
                            "    - riscv: Properly export reserved regions in /proc/iomem",
                            "    - riscv: KGDB: Do not inline arch_kgdb_breakpoint()",
                            "    - riscv: KGDB: Remove \".option norvc/.option rvc\" for kgdb_compiled_break",
                            "    - cpufreq/sched: Fix the usage of CPUFREQ_NEED_UPDATE_LIMITS",
                            "    - writeback: fix false warning in inode_to_wb()",
                            "    - Revert \"PCI: Avoid reset when disabled via sysfs\"",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix vi feedback rate",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix logic of enabling vi channels",
                            "    - asus-laptop: Fix an uninitialized variable",
                            "    - nfs: move nfs_fhandle_hash to common include file",
                            "    - nfs: add missing selections of CONFIG_CRC32",
                            "    - btrfs: correctly escape subvol in btrfs_show_options()",
                            "    - crypto: caam/qi - Fix drv_ctx refcount bug",
                            "    - loop: properly send KOBJ_CHANGED uevent for disk device",
                            "    - loop: LOOP_SET_FD: send uevents for partitions",
                            "    - mm/gup: fix wrongly calculated returned value in",
                            "      fault_in_safe_writeable()",
                            "    - riscv: Avoid fortify warning in syscall_get_arguments()",
                            "    - tracing: Fix filter string testing",
                            "    - perf/x86/intel: Allow to update user space GPRs from PEBS records",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SNR",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on ICX",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SPR",
                            "    - drm/repaper: fix integer overflows in repeat functions",
                            "    - drm/amdgpu/dma_buf: fix page_link check",
                            "    - drm/sti: remove duplicate object names",
                            "    - KVM: arm64: Get rid of host SVE tracking/saving",
                            "    - KVM: arm64: Always start with clearing SVE flag on load",
                            "    - KVM: arm64: Discard any SVE state when entering KVM guests",
                            "    - arm64/fpsimd: Track the saved FPSIMD state type separately to TIF_SVE",
                            "    - arm64/fpsimd: Have KVM explicitly say which FP registers to save",
                            "    - arm64/fpsimd: Stop using TIF_SVE to manage register saving in KVM",
                            "    - KVM: arm64: Unconditionally save+flush host FPSIMD/SVE/SME state",
                            "    - KVM: arm64: Remove host FPSIMD saving for non-protected KVM",
                            "    - KVM: arm64: Remove VHE host restore of CPACR_EL1.ZEN",
                            "    - KVM: arm64: Calculate cptr_el2 traps on activating traps",
                            "    - KVM: arm64: Eagerly switch ZCR_EL{1,2}",
                            "    - cpufreq: Reference count policy in cpufreq_update_limits()",
                            "    - kbuild: Add '-fno-builtin-wcslen'",
                            "    - mptcp: sockopt: fix getting IPV6_V6ONLY",
                            "    - misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq'",
                            "      error",
                            "    - misc: pci_endpoint_test: Fix 'irq_type' to convey the correct type",
                            "    - x86/pvh: Call C code via the kernel virtual mapping",
                            "    - landlock: Add the errata interface",
                            "    - nvmet-fc: Remove unused functions",
                            "    - Revert \"smb: client: fix use-after-free bug in",
                            "      cifs_debug_data_proc_show()\"",
                            "    - smb: client: fix use-after-free bug in cifs_debug_data_proc_show()",
                            "    - blk-cgroup: support to track if policy is online",
                            "    - net: openvswitch: fix race on port output",
                            "    - openvswitch: fix lockup on tx to unregistering netdev with carrier",
                            "    - MIPS: dec: Declare which_prom() as static",
                            "    - MIPS: cevt-ds1287: Add missing ds1287.h include",
                            "    - MIPS: ds1287: Match ds1287_set_base_clock() function types",
                            "    - mm: fix apply_to_existing_page_range()",
                            "    - module: sign with sha512 instead of sha1 by default",
                            "    - media: streamzap: remove unnecessary ir_raw_event_reset and handle",
                            "    - media: streamzap: no need for usb pid/vid in device name",
                            "    - media: streamzap: less chatter",
                            "    - media: streamzap: remove unused struct members",
                            "    - auxdisplay: hd44780: Convert to platform remove callback returning void",
                            "    - auxdisplay: hd44780: Fix an API misuse in hd44780.c",
                            "    - net: dsa: mv88e6xxx: fix VTU methods for 6320 family",
                            "    - soc: samsung: exynos-chipid: avoid soc_device_to_device()",
                            "    - soc: samsung: exynos-chipid: Pass revision reg offsets",
                            "    - iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary",
                            "      return value check",
                            "    - iio: adc: ad7768-1: Fix conversion result sign",
                            "    - backlight: led_bl: Convert to platform remove callback returning void",
                            "    - cifs: print TIDs as hex",
                            "    - cifs: fix integer overflow in match_server()",
                            "    - gpio: tegra186: Force one interrupt per bank",
                            "    - gpio: tegra186: fix resource handling in ACPI probe path",
                            "    - Revert \"PCI: Coalesce host bridge contiguous apertures\"",
                            "    - PCI: Coalesce host bridge contiguous apertures",
                            "    - PCI: Assign PCI domain IDs by ida_alloc()",
                            "    - ksmbd: Prevent integer overflow in calculation of deadtime",
                            "    - selftests/mm: generate a temporary mountpoint for cgroup filesystem",
                            "    - kmsan: disable strscpy() optimization under KMSAN",
                            "    - string: Add load_unaligned_zeropad() code path to sized_strscpy()",
                            "    - drm/msm/a6xx: Improve gpu recovery sequence",
                            "    - drm/msm/a6xx: Handle GMU prepare-slumber hfi failure",
                            "    - drm/msm/a6xx: Avoid gx gbit halt during rpm suspend",
                            "    - drm/msm/a6xx: Fix stale rpmh votes from GPU",
                            "    - dma/contiguous: avoid warning about unused size_bytes",
                            "    - cpufreq: cppc: Fix invalid return value in .get() callback",
                            "    - iommu/amd: Return an error if vCPU affinity is set for non-vCPU IRTE",
                            "    - virtio_console: fix missing byte order handling for cols and rows",
                            "    - net: selftests: initialize TCP header and skb payload with zero",
                            "    - drm/amd/display: Fix gpu reset in multidisplay config",
                            "    - KVM: SVM: Allocate IR data using atomic allocation",
                            "    - USB: storage: quirk for ADATA Portable HDD CH94",
                            "    - mei: me: add panther lake H DID",
                            "    - serial: sifive: lock port in startup()/shutdown() callbacks",
                            "    - USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe",
                            "    - USB: serial: option: add Sierra Wireless EM9291",
                            "    - USB: serial: simple: add OWON HDS200 series oscilloscope support",
                            "    - usb: chipidea: ci_hdrc_imx: fix call balance of regulator routines",
                            "    - usb: chipidea: ci_hdrc_imx: implement usb_phy_init() error handling",
                            "    - USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)",
                            "    - usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive",
                            "    - usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive",
                            "    - USB: VLI disk crashes if LPM is used",
                            "    - USB: wdm: handle IO errors in wdm_wwan_port_start",
                            "    - USB: wdm: wdm_wwan_port_tx_complete mutex in atomic context",
                            "    - USB: wdm: add annotation",
                            "    - MIPS: cm: Detect CM quirks from device tree",
                            "    - clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec()",
                            "    - parisc: PDT: Fix missing prototype warning",
                            "    - s390/tty: Fix a potential memory leak bug",
                            "    - usb: host: max3421-hcd: Add missing spi_device_id table",
                            "    - fs/ntfs3: Fix WARNING in ntfs_extend_initialized_size",
                            "    - usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield",
                            "    - dmaengine: dmatest: Fix dmatest waiting less when interrupted",
                            "    - usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running",
                            "    - objtool, ASoC: codecs: wcd934x: Remove potential undefined behavior in",
                            "      wcd934x_slim_irq_handler()",
                            "    - ntb: reduce stack usage in idt_scan_mws",
                            "    - sched/isolation: Make CONFIG_CPU_ISOLATION depend on CONFIG_SMP",
                            "    - KVM: s390: Don't use %pK through tracepoints",
                            "    - selftests: ublk: fix test_stripe_04",
                            "    - xen: Change xen-acpi-processor dom0 dependency",
                            "    - nvme: requeue namespace scan on missed AENs",
                            "    - ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls",
                            "    - nvme: re-read ANA log page after ns scan completes",
                            "    - objtool: Stop UNRET validation on UD2",
                            "    - selftests/mincore: Allow read-ahead pages to reach the end of the file",
                            "    - x86/bugs: Use SBPB in write_ibpb() if applicable",
                            "    - x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline",
                            "    - x86/bugs: Don't fill RSB on context switch with eIBRS",
                            "    - nvmet-fc: take tgtport reference only once",
                            "    - nvmet-fc: put ref when assoc->del_work is already scheduled",
                            "    - ext4: make block validity check resistent to sb bh corruption",
                            "    - scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes",
                            "    - scsi: pm80xx: Set phy_attached to zero when device is gone",
                            "    - loop: aio inherit the ioprio of original request",
                            "    - ubsan: Fix panic from test_ubsan_out_of_bounds",
                            "    - md/raid1: Add check for missing source disk in process_checks()",
                            "    - jfs: define xtree root and page independently",
                            "    - comedi: jr3_pci: Fix synchronous deletion of timer",
                            "    - crypto: atmel-sha204a - Set hwrng quality to lowest possible",
                            "    - net: dsa: mv88e6xxx: fix atu_move_port_mask for 6341 family",
                            "    - net: dsa: mv88e6xxx: enable PVT for 6321 switch",
                            "    - net: dsa: mv88e6xxx: enable .port_set_policy() for 6320 family",
                            "    - xdp: Reset bpf_redirect_info before running a xdp's BPF prog.",
                            "    - MIPS: cm: Fix warning if MIPS_CM is disabled",
                            "    - nvme: fixup scan failure for non-ANA multipath controllers",
                            "    - PCI: Fix use-after-free in pci_bus_release_domain_nr()",
                            "    - PCI: Fix dropping valid root bus resources with .end = zero",
                            "    - PCI: Release resource invalidated by coalescing",
                            "    - Linux 5.15.181",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49989",
                            "    - drm/amd/display: fix double free issue during amdgpu module unload",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37803",
                            "    - udmabuf: fix a buf size overflow issue during udmabuf creation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37983",
                            "    - qibfs: fix _another_ leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37881",
                            "    - usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37805",
                            "    - sound/virtio: Fix cancel_sync warnings on uninitialized work_structs",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37883",
                            "    - s390/sclp: Add check for get_zeroed_page()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37808",
                            "    - crypto: null - Use spin lock instead of mutex",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37985",
                            "    - USB: wdm: close race between wdm_open and wdm_wwan_port_stop",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37810",
                            "    - usb: dwc3: gadget: check that event count does not exceed event buffer",
                            "      length",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37811",
                            "    - usb: chipidea: ci_hdrc_imx: fix usbmisc handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37812",
                            "    - usb: cdns3: Fix deadlock when using NCM gadget",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37885",
                            "    - KVM: x86: Reset IRTE to host control if *new* route isn't postable",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37817",
                            "    - mcb: fix a double free bug in chameleon_parse_gdd()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37823",
                            "    - net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37797",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37824",
                            "    - tipc: fix NULL pointer dereference in tipc_mon_reinit_self()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37989",
                            "    - net: phy: leds: fix memory leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37829",
                            "    - cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37830",
                            "    - cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37836",
                            "    - PCI: Fix reference leak in pci_register_host_bridge()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37844",
                            "    - cifs: avoid NULL pointer dereference in dbg call",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23144",
                            "    - backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23148",
                            "    - soc: samsung: exynos-chipid: Add NULL pointer check in",
                            "      exynos_chipid_probe()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-22027",
                            "    - media: streamzap: fix race between device disconnection and urb callback",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50125",
                            "    - Bluetooth: SCO: Fix UAF on sco_sock_timeout",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-49535",
                            "    - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI",
                            "      and PLOGI",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35943",
                            "    - pmdomain: ti: Add a null pointer check to the omap_prm_domain_init",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-26686",
                            "    - fs/proc: do_task_stat: use sig->stats_lock to gather the",
                            "      threads/children stats",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-48893",
                            "    - drm/i915/gt: Cleanup partial engine discovery failures",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50280",
                            "    - dm cache: fix flushing uninitialized delayed_work on cache_ctr error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-54458",
                            "    - scsi: ufs: bsg: Set bsg_queue to NULL after removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-42322",
                            "    - ipvs: properly dereference pe in ip_vs_add_service",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49960",
                            "    - ext4: fix timer use-after-free on failed mount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-36908",
                            "    - blk-iocost: do not WARN if iocg was already offlined",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-21853",
                            "    - bpf: avoid holding freeze_mutex during mmap operation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-53128",
                            "    - sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35867",
                            "    - smb: client: fix potential UAF in cifs_stats_proc_show()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52757",
                            "    - smb: client: fix potential deadlock when releasing mids",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46742",
                            "    - smb/server: fix potential null-ptr-deref of lease_ctx_info in",
                            "      smb2_open()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52572",
                            "    - cifs: Fix UAF in cifs_demultiplex_thread()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35866",
                            "    - smb: client: fix potential UAF in cifs_dump_full_key()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46816",
                            "    - drm/amd/display: Stop amdgpu_dm initialize when link nums greater than",
                            "      max_links",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46774",
                            "    - powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-38540",
                            "    - bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-27402",
                            "    - phonet/pep: fix racy skb_queue_empty() use",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50272",
                            "    - filemap: Fix bounds checking in filemap_read()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50258",
                            "    - net: fix crash when config small gso_max_size/gso_ipv4_max_size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-56751",
                            "    - ipv6: release nexthop on device removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23140",
                            "    - misc: pci_endpoint_test: Avoid issue of interrupts remaining after",
                            "      request_irq error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37765",
                            "    - drm/nouveau: prime: fix ttm_bo_delayed_delete oops",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37766",
                            "    - drm/amd/pm/powerplay/hwmgr/vega20_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37767",
                            "    - drm/amd/pm/swsmu/smu13/smu_v13_0: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768",
                            "    - drm/amd/pm/powerplay/hwmgr/smu7_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37770",
                            "    - drm/amd/pm/powerplay: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768 // CVE-2025-37771",
                            "    - drm/amd/pm: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37773",
                            "    - virtiofs: add filesystem context source name check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37780",
                            "    - isofs: Prevent the use of too small fid",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37781",
                            "    - i2c: cros-ec-tunnel: defer probe if parent EC is not present",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37782",
                            "    - hfs/hfsplus: fix slab-out-of-bounds in hfs_bnode_read_key",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-0927 has been rejected. Revert this fix and apply upstream fix",
                            "    - Revert \"UBUNTU: SAUCE: fs: hfs/hfsplus: add key_len boundary check to",
                            "      hfs_bnode_read_key\"",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37871",
                            "    - nfsd: decrease sc_count directly if fail to queue dl_recall",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37787",
                            "    - net: dsa: mv88e6xxx: avoid unregistering devlink regions which were",
                            "      never registered",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37788",
                            "    - cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37789",
                            "    - net: openvswitch: fix nested key length validation in the set() action",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37790",
                            "    - net: mctp: Set SOCK_RCU_FREE",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37875",
                            "    - igc: fix PTM cycle trigger logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37792",
                            "    - Bluetooth: btrtl: Prevent potential NULL dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37867",
                            "    - RDMA/core: Silence oversized kvmalloc() warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37982",
                            "    - wifi: wl1251: fix memory leak in wl1251_tx_work",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37794",
                            "    - wifi: mac80211: Purge vif txq in ieee80211_do_stop()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37796",
                            "    - wifi: at76c50x: fix use after free access in at76_disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37838",
                            "    - HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol",
                            "      Driver Due to Race Condition",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37940",
                            "    - ftrace: Add cond_resched() to ftrace_graph_set_hash()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23142",
                            "    - sctp: detect and prevent references to a freed transport in sendmsg",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37892",
                            "    - mtd: inftlcore: Add error check for inftl_read_oob()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23145",
                            "    - mptcp: fix NULL pointer in can_accept_new_subflow",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23146",
                            "    - mfd: ene-kb3930: Fix a potential NULL pointer dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37839",
                            "    - jbd2: remove wrong sb->s_sequence check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23147",
                            "    - i3c: Add NULL pointer check in i3c_master_queue_ibi()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23150",
                            "    - ext4: fix off-by-one error in do_split",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23151",
                            "    - bus: mhi: host: Fix race between unprepare and queue_buf",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23156",
                            "    - media: venus: hfi_parser: refactor hfi packet parsing logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23157",
                            "    - media: venus: hfi_parser: add check to avoid out of bound access",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37840",
                            "    - mtd: rawnand: brcmnand: fix PM resume warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23158",
                            "    - media: venus: hfi: add check to handle incorrect queue size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23159",
                            "    - media: venus: hfi: add a check to handle OOB in sfr region",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37850",
                            "    - pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37851",
                            "    - fbdev: omapfb: Add 'plane' value check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23161",
                            "    - PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23163",
                            "    - net: vlan: don't propagate flags on open",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37857",
                            "    - scsi: st: Fix array overflow in st_setup()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37738",
                            "    - ext4: ignore xattrs past end",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37739",
                            "    - f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37740",
                            "    - jfs: add sanity check for agwidth in dbMount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37741",
                            "    - jfs: Prevent copying of nlink with value 0 from disk inode",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37858",
                            "    - fs/jfs: Prevent integer overflow in AG size calculation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37742",
                            "    - jfs: Fix uninit-value access of imap allocated in the diMount() function",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37859",
                            "    - page_pool: avoid infinite loop to schedule delayed worker",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37862",
                            "    - HID: pidff: Fix null pointer dereference in pidff_find_fields",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37841",
                            "    - pm: cpupower: bench: Prevent NULL dereference on malloc failure",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37749",
                            "    - net: ppp: Add bound checking for skb data on ppp_sync_txmung",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37756",
                            "    - net: tls: explicitly disallow disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37757",
                            "    - tipc: fix memory leak in tipc_link_xmit",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37758",
                            "    - ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()",
                            "  * CVE-2024-53051",
                            "    - drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability",
                            "  * CVE-2024-46787",
                            "    - userfaultfd: fix checks for huge PMDs",
                            "  * CVE-2025-37890",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class with netem as child",
                            "      qdisc",
                            "    - sch_hfsc: Fix qlen accounting bug when using peek in hfsc_enqueue()",
                            "    - net_sched: hfsc: Address reentrant enqueue adding class to eltree twice",
                            "  * CVE-2025-37997",
                            "    - netfilter: ipset: fix region locking in hash types",
                            "  * CVE-2025-37798",
                            "    - sch_htb: make htb_qlen_notify() idempotent",
                            "    - sch_htb: make htb_deactivate() idempotent",
                            "    - sch_drr: make drr_qlen_notify() idempotent",
                            "    - sch_hfsc: make hfsc_qlen_notify() idempotent",
                            "    - sch_qfq: make qfq_qlen_notify() idempotent",
                            "    - sch_ets: make est_qlen_notify() idempotent",
                            "    - codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()",
                            "  * CVE-2025-37750",
                            "    - smb: client: fix UAF in decryption with multichannel",
                            "  * CVE-2024-53185",
                            "    - smb: client: fix NULL ptr deref in crypto_aead_setkey()",
                            "  * CVE-2024-50047",
                            "    - smb: client: fix UAF in async decryption",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] update variants",
                            "    - [Packaging] update annotations scripts",
                            ""
                        ],
                        "package": "linux-kvm",
                        "version": "5.15.0-1084.89",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2114567,
                            2114581,
                            2112440,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2107516,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            1786013
                        ],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 13:35:25 +0800"
                    }
                ],
                "notes": "linux-headers-5.15.0-1084-kvm version '5.15.0-1084.89' (source package linux-kvm version '5.15.0-1084.89') was added. linux-headers-5.15.0-1084-kvm version '5.15.0-1084.89' has the same source package name, linux-kvm, as removed package linux-headers-5.15.0-1083-kvm. As such we can use the source package version of the removed package, '5.15.0-1083.88', as the starting point in our changelog diff. Kernel packages are an example of where the binary package name changes for the same source package. Using the removed package source package version as our starting point means we can still get meaningful changelog diffs even for what appears to be a new package.",
                "is_version_downgrade": false
            },
            {
                "name": "linux-image-5.15.0-1084-kvm",
                "from_version": {
                    "source_package_name": "linux-signed-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux-signed-kvm",
                    "source_package_version": "5.15.0-1084.89",
                    "version": "5.15.0-1084.89"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 5.15.0-1084.89",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/tracking-bug -- resync from main package",
                            ""
                        ],
                        "package": "linux-signed-kvm",
                        "version": "5.15.0-1084.89",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 14:02:59 +0800"
                    }
                ],
                "notes": "linux-image-5.15.0-1084-kvm version '5.15.0-1084.89' (source package linux-signed-kvm version '5.15.0-1084.89') was added. linux-image-5.15.0-1084-kvm version '5.15.0-1084.89' has the same source package name, linux-signed-kvm, as removed package linux-image-5.15.0-1083-kvm. As such we can use the source package version of the removed package, '5.15.0-1083.88', as the starting point in our changelog diff. Kernel packages are an example of where the binary package name changes for the same source package. Using the removed package source package version as our starting point means we can still get meaningful changelog diffs even for what appears to be a new package.",
                "is_version_downgrade": false
            },
            {
                "name": "linux-kvm-headers-5.15.0-1084",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1084.89",
                    "version": "5.15.0-1084.89"
                },
                "cves": [
                    {
                        "cve": "CVE-2022-49063",
                        "url": "https://ubuntu.com/security/CVE-2022-49063",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49168",
                        "url": "https://ubuntu.com/security/CVE-2022-49168",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46751",
                        "url": "https://ubuntu.com/security/CVE-2024-46751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22062",
                        "url": "https://ubuntu.com/security/CVE-2025-22062",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53203",
                        "url": "https://ubuntu.com/security/CVE-2024-53203",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35790",
                        "url": "https://ubuntu.com/security/CVE-2024-35790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37967",
                        "url": "https://ubuntu.com/security/CVE-2025-37967",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37992",
                        "url": "https://ubuntu.com/security/CVE-2025-37992",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-26 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37949",
                        "url": "https://ubuntu.com/security/CVE-2025-37949",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37969",
                        "url": "https://ubuntu.com/security/CVE-2025-37969",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37970",
                        "url": "https://ubuntu.com/security/CVE-2025-37970",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37964",
                        "url": "https://ubuntu.com/security/CVE-2025-37964",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-21546",
                        "url": "https://ubuntu.com/security/CVE-2022-21546",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37819",
                        "url": "https://ubuntu.com/security/CVE-2025-37819",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37905",
                        "url": "https://ubuntu.com/security/CVE-2025-37905",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38541",
                        "url": "https://ubuntu.com/security/CVE-2024-38541",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37909",
                        "url": "https://ubuntu.com/security/CVE-2025-37909",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37911",
                        "url": "https://ubuntu.com/security/CVE-2025-37911",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37912",
                        "url": "https://ubuntu.com/security/CVE-2025-37912",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37913",
                        "url": "https://ubuntu.com/security/CVE-2025-37913",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37914",
                        "url": "https://ubuntu.com/security/CVE-2025-37914",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37915",
                        "url": "https://ubuntu.com/security/CVE-2025-37915",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26739",
                        "url": "https://ubuntu.com/security/CVE-2024-26739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21839",
                        "url": "https://ubuntu.com/security/CVE-2025-21839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-07 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37923",
                        "url": "https://ubuntu.com/security/CVE-2025-37923",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37927",
                        "url": "https://ubuntu.com/security/CVE-2025-37927",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37990",
                        "url": "https://ubuntu.com/security/CVE-2025-37990",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37991",
                        "url": "https://ubuntu.com/security/CVE-2025-37991",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37930",
                        "url": "https://ubuntu.com/security/CVE-2025-37930",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49989",
                        "url": "https://ubuntu.com/security/CVE-2024-49989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37803",
                        "url": "https://ubuntu.com/security/CVE-2025-37803",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37983",
                        "url": "https://ubuntu.com/security/CVE-2025-37983",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37881",
                        "url": "https://ubuntu.com/security/CVE-2025-37881",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37805",
                        "url": "https://ubuntu.com/security/CVE-2025-37805",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37883",
                        "url": "https://ubuntu.com/security/CVE-2025-37883",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37808",
                        "url": "https://ubuntu.com/security/CVE-2025-37808",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37985",
                        "url": "https://ubuntu.com/security/CVE-2025-37985",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37810",
                        "url": "https://ubuntu.com/security/CVE-2025-37810",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37811",
                        "url": "https://ubuntu.com/security/CVE-2025-37811",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37812",
                        "url": "https://ubuntu.com/security/CVE-2025-37812",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37885",
                        "url": "https://ubuntu.com/security/CVE-2025-37885",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37817",
                        "url": "https://ubuntu.com/security/CVE-2025-37817",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37823",
                        "url": "https://ubuntu.com/security/CVE-2025-37823",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37797",
                        "url": "https://ubuntu.com/security/CVE-2025-37797",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37824",
                        "url": "https://ubuntu.com/security/CVE-2025-37824",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37989",
                        "url": "https://ubuntu.com/security/CVE-2025-37989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37829",
                        "url": "https://ubuntu.com/security/CVE-2025-37829",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37830",
                        "url": "https://ubuntu.com/security/CVE-2025-37830",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37836",
                        "url": "https://ubuntu.com/security/CVE-2025-37836",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37844",
                        "url": "https://ubuntu.com/security/CVE-2025-37844",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23144",
                        "url": "https://ubuntu.com/security/CVE-2025-23144",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23148",
                        "url": "https://ubuntu.com/security/CVE-2025-23148",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22027",
                        "url": "https://ubuntu.com/security/CVE-2025-22027",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50125",
                        "url": "https://ubuntu.com/security/CVE-2024-50125",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-05 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49535",
                        "url": "https://ubuntu.com/security/CVE-2022-49535",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:01:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35943",
                        "url": "https://ubuntu.com/security/CVE-2024-35943",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26686",
                        "url": "https://ubuntu.com/security/CVE-2024-26686",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-48893",
                        "url": "https://ubuntu.com/security/CVE-2022-48893",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-21 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50280",
                        "url": "https://ubuntu.com/security/CVE-2024-50280",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-54458",
                        "url": "https://ubuntu.com/security/CVE-2024-54458",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-27 03:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-42322",
                        "url": "https://ubuntu.com/security/CVE-2024-42322",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-17 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49960",
                        "url": "https://ubuntu.com/security/CVE-2024-49960",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-36908",
                        "url": "https://ubuntu.com/security/CVE-2024-36908",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-30 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21853",
                        "url": "https://ubuntu.com/security/CVE-2025-21853",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-12 10:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53128",
                        "url": "https://ubuntu.com/security/CVE-2024-53128",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                        "cve_priority": "negligible",
                        "cve_public_date": "2024-12-04 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35867",
                        "url": "https://ubuntu.com/security/CVE-2024-35867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52757",
                        "url": "https://ubuntu.com/security/CVE-2023-52757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-21 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46742",
                        "url": "https://ubuntu.com/security/CVE-2024-46742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52572",
                        "url": "https://ubuntu.com/security/CVE-2023-52572",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-03-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35866",
                        "url": "https://ubuntu.com/security/CVE-2024-35866",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46816",
                        "url": "https://ubuntu.com/security/CVE-2024-46816",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-27 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46774",
                        "url": "https://ubuntu.com/security/CVE-2024-46774",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38540",
                        "url": "https://ubuntu.com/security/CVE-2024-38540",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-27402",
                        "url": "https://ubuntu.com/security/CVE-2024-27402",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50272",
                        "url": "https://ubuntu.com/security/CVE-2024-50272",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50258",
                        "url": "https://ubuntu.com/security/CVE-2024-50258",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-09 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-56751",
                        "url": "https://ubuntu.com/security/CVE-2024-56751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-29 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23140",
                        "url": "https://ubuntu.com/security/CVE-2025-23140",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37765",
                        "url": "https://ubuntu.com/security/CVE-2025-37765",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37766",
                        "url": "https://ubuntu.com/security/CVE-2025-37766",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37767",
                        "url": "https://ubuntu.com/security/CVE-2025-37767",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37768",
                        "url": "https://ubuntu.com/security/CVE-2025-37768",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37770",
                        "url": "https://ubuntu.com/security/CVE-2025-37770",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37771",
                        "url": "https://ubuntu.com/security/CVE-2025-37771",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37773",
                        "url": "https://ubuntu.com/security/CVE-2025-37773",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37780",
                        "url": "https://ubuntu.com/security/CVE-2025-37780",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37781",
                        "url": "https://ubuntu.com/security/CVE-2025-37781",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37782",
                        "url": "https://ubuntu.com/security/CVE-2025-37782",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                        "cve_priority": "negligible",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-0927",
                        "url": "https://ubuntu.com/security/CVE-2025-0927",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-23 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37871",
                        "url": "https://ubuntu.com/security/CVE-2025-37871",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37787",
                        "url": "https://ubuntu.com/security/CVE-2025-37787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37788",
                        "url": "https://ubuntu.com/security/CVE-2025-37788",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37789",
                        "url": "https://ubuntu.com/security/CVE-2025-37789",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37790",
                        "url": "https://ubuntu.com/security/CVE-2025-37790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37875",
                        "url": "https://ubuntu.com/security/CVE-2025-37875",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37792",
                        "url": "https://ubuntu.com/security/CVE-2025-37792",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37867",
                        "url": "https://ubuntu.com/security/CVE-2025-37867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37982",
                        "url": "https://ubuntu.com/security/CVE-2025-37982",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37794",
                        "url": "https://ubuntu.com/security/CVE-2025-37794",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37796",
                        "url": "https://ubuntu.com/security/CVE-2025-37796",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37838",
                        "url": "https://ubuntu.com/security/CVE-2025-37838",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-18 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37940",
                        "url": "https://ubuntu.com/security/CVE-2025-37940",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23142",
                        "url": "https://ubuntu.com/security/CVE-2025-23142",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37892",
                        "url": "https://ubuntu.com/security/CVE-2025-37892",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23145",
                        "url": "https://ubuntu.com/security/CVE-2025-23145",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23146",
                        "url": "https://ubuntu.com/security/CVE-2025-23146",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37839",
                        "url": "https://ubuntu.com/security/CVE-2025-37839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23147",
                        "url": "https://ubuntu.com/security/CVE-2025-23147",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23150",
                        "url": "https://ubuntu.com/security/CVE-2025-23150",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23151",
                        "url": "https://ubuntu.com/security/CVE-2025-23151",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23156",
                        "url": "https://ubuntu.com/security/CVE-2025-23156",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23157",
                        "url": "https://ubuntu.com/security/CVE-2025-23157",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37840",
                        "url": "https://ubuntu.com/security/CVE-2025-37840",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23158",
                        "url": "https://ubuntu.com/security/CVE-2025-23158",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23159",
                        "url": "https://ubuntu.com/security/CVE-2025-23159",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37850",
                        "url": "https://ubuntu.com/security/CVE-2025-37850",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37851",
                        "url": "https://ubuntu.com/security/CVE-2025-37851",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23161",
                        "url": "https://ubuntu.com/security/CVE-2025-23161",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23163",
                        "url": "https://ubuntu.com/security/CVE-2025-23163",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37857",
                        "url": "https://ubuntu.com/security/CVE-2025-37857",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37738",
                        "url": "https://ubuntu.com/security/CVE-2025-37738",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37739",
                        "url": "https://ubuntu.com/security/CVE-2025-37739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37740",
                        "url": "https://ubuntu.com/security/CVE-2025-37740",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37741",
                        "url": "https://ubuntu.com/security/CVE-2025-37741",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37858",
                        "url": "https://ubuntu.com/security/CVE-2025-37858",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37742",
                        "url": "https://ubuntu.com/security/CVE-2025-37742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37859",
                        "url": "https://ubuntu.com/security/CVE-2025-37859",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37862",
                        "url": "https://ubuntu.com/security/CVE-2025-37862",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37841",
                        "url": "https://ubuntu.com/security/CVE-2025-37841",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37749",
                        "url": "https://ubuntu.com/security/CVE-2025-37749",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37756",
                        "url": "https://ubuntu.com/security/CVE-2025-37756",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37757",
                        "url": "https://ubuntu.com/security/CVE-2025-37757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37758",
                        "url": "https://ubuntu.com/security/CVE-2025-37758",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53051",
                        "url": "https://ubuntu.com/security/CVE-2024-53051",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46787",
                        "url": "https://ubuntu.com/security/CVE-2024-46787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37890",
                        "url": "https://ubuntu.com/security/CVE-2025-37890",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-16 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37997",
                        "url": "https://ubuntu.com/security/CVE-2025-37997",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-29 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37798",
                        "url": "https://ubuntu.com/security/CVE-2025-37798",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37750",
                        "url": "https://ubuntu.com/security/CVE-2025-37750",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53185",
                        "url": "https://ubuntu.com/security/CVE-2024-53185",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50047",
                        "url": "https://ubuntu.com/security/CVE-2024-50047",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                        "cve_priority": "high",
                        "cve_public_date": "2024-10-21 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114567,
                    2114581,
                    2112440,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2107516,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    1786013
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2022-49063",
                                "url": "https://ubuntu.com/security/CVE-2022-49063",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49168",
                                "url": "https://ubuntu.com/security/CVE-2022-49168",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46751",
                                "url": "https://ubuntu.com/security/CVE-2024-46751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22062",
                                "url": "https://ubuntu.com/security/CVE-2025-22062",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53203",
                                "url": "https://ubuntu.com/security/CVE-2024-53203",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35790",
                                "url": "https://ubuntu.com/security/CVE-2024-35790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37967",
                                "url": "https://ubuntu.com/security/CVE-2025-37967",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37992",
                                "url": "https://ubuntu.com/security/CVE-2025-37992",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-26 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37949",
                                "url": "https://ubuntu.com/security/CVE-2025-37949",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37969",
                                "url": "https://ubuntu.com/security/CVE-2025-37969",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37970",
                                "url": "https://ubuntu.com/security/CVE-2025-37970",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37964",
                                "url": "https://ubuntu.com/security/CVE-2025-37964",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-21546",
                                "url": "https://ubuntu.com/security/CVE-2022-21546",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37819",
                                "url": "https://ubuntu.com/security/CVE-2025-37819",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37905",
                                "url": "https://ubuntu.com/security/CVE-2025-37905",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38541",
                                "url": "https://ubuntu.com/security/CVE-2024-38541",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37909",
                                "url": "https://ubuntu.com/security/CVE-2025-37909",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37911",
                                "url": "https://ubuntu.com/security/CVE-2025-37911",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37912",
                                "url": "https://ubuntu.com/security/CVE-2025-37912",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37913",
                                "url": "https://ubuntu.com/security/CVE-2025-37913",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37914",
                                "url": "https://ubuntu.com/security/CVE-2025-37914",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37915",
                                "url": "https://ubuntu.com/security/CVE-2025-37915",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26739",
                                "url": "https://ubuntu.com/security/CVE-2024-26739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21839",
                                "url": "https://ubuntu.com/security/CVE-2025-21839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-07 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37923",
                                "url": "https://ubuntu.com/security/CVE-2025-37923",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37927",
                                "url": "https://ubuntu.com/security/CVE-2025-37927",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37990",
                                "url": "https://ubuntu.com/security/CVE-2025-37990",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37991",
                                "url": "https://ubuntu.com/security/CVE-2025-37991",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37930",
                                "url": "https://ubuntu.com/security/CVE-2025-37930",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49989",
                                "url": "https://ubuntu.com/security/CVE-2024-49989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37803",
                                "url": "https://ubuntu.com/security/CVE-2025-37803",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37983",
                                "url": "https://ubuntu.com/security/CVE-2025-37983",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37881",
                                "url": "https://ubuntu.com/security/CVE-2025-37881",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37805",
                                "url": "https://ubuntu.com/security/CVE-2025-37805",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37883",
                                "url": "https://ubuntu.com/security/CVE-2025-37883",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37808",
                                "url": "https://ubuntu.com/security/CVE-2025-37808",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37985",
                                "url": "https://ubuntu.com/security/CVE-2025-37985",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37810",
                                "url": "https://ubuntu.com/security/CVE-2025-37810",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37811",
                                "url": "https://ubuntu.com/security/CVE-2025-37811",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37812",
                                "url": "https://ubuntu.com/security/CVE-2025-37812",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37885",
                                "url": "https://ubuntu.com/security/CVE-2025-37885",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37817",
                                "url": "https://ubuntu.com/security/CVE-2025-37817",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37823",
                                "url": "https://ubuntu.com/security/CVE-2025-37823",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37797",
                                "url": "https://ubuntu.com/security/CVE-2025-37797",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37824",
                                "url": "https://ubuntu.com/security/CVE-2025-37824",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37989",
                                "url": "https://ubuntu.com/security/CVE-2025-37989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37829",
                                "url": "https://ubuntu.com/security/CVE-2025-37829",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37830",
                                "url": "https://ubuntu.com/security/CVE-2025-37830",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37836",
                                "url": "https://ubuntu.com/security/CVE-2025-37836",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37844",
                                "url": "https://ubuntu.com/security/CVE-2025-37844",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23144",
                                "url": "https://ubuntu.com/security/CVE-2025-23144",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23148",
                                "url": "https://ubuntu.com/security/CVE-2025-23148",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22027",
                                "url": "https://ubuntu.com/security/CVE-2025-22027",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50125",
                                "url": "https://ubuntu.com/security/CVE-2024-50125",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-05 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49535",
                                "url": "https://ubuntu.com/security/CVE-2022-49535",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:01:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35943",
                                "url": "https://ubuntu.com/security/CVE-2024-35943",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26686",
                                "url": "https://ubuntu.com/security/CVE-2024-26686",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-48893",
                                "url": "https://ubuntu.com/security/CVE-2022-48893",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-21 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50280",
                                "url": "https://ubuntu.com/security/CVE-2024-50280",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-54458",
                                "url": "https://ubuntu.com/security/CVE-2024-54458",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-27 03:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-42322",
                                "url": "https://ubuntu.com/security/CVE-2024-42322",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-17 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49960",
                                "url": "https://ubuntu.com/security/CVE-2024-49960",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-36908",
                                "url": "https://ubuntu.com/security/CVE-2024-36908",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-30 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21853",
                                "url": "https://ubuntu.com/security/CVE-2025-21853",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-12 10:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53128",
                                "url": "https://ubuntu.com/security/CVE-2024-53128",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                                "cve_priority": "negligible",
                                "cve_public_date": "2024-12-04 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35867",
                                "url": "https://ubuntu.com/security/CVE-2024-35867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52757",
                                "url": "https://ubuntu.com/security/CVE-2023-52757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-21 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46742",
                                "url": "https://ubuntu.com/security/CVE-2024-46742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52572",
                                "url": "https://ubuntu.com/security/CVE-2023-52572",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-03-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35866",
                                "url": "https://ubuntu.com/security/CVE-2024-35866",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46816",
                                "url": "https://ubuntu.com/security/CVE-2024-46816",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-27 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46774",
                                "url": "https://ubuntu.com/security/CVE-2024-46774",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38540",
                                "url": "https://ubuntu.com/security/CVE-2024-38540",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-27402",
                                "url": "https://ubuntu.com/security/CVE-2024-27402",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50272",
                                "url": "https://ubuntu.com/security/CVE-2024-50272",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50258",
                                "url": "https://ubuntu.com/security/CVE-2024-50258",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-09 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-56751",
                                "url": "https://ubuntu.com/security/CVE-2024-56751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-29 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23140",
                                "url": "https://ubuntu.com/security/CVE-2025-23140",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37765",
                                "url": "https://ubuntu.com/security/CVE-2025-37765",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37766",
                                "url": "https://ubuntu.com/security/CVE-2025-37766",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37767",
                                "url": "https://ubuntu.com/security/CVE-2025-37767",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37768",
                                "url": "https://ubuntu.com/security/CVE-2025-37768",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37770",
                                "url": "https://ubuntu.com/security/CVE-2025-37770",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37771",
                                "url": "https://ubuntu.com/security/CVE-2025-37771",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37773",
                                "url": "https://ubuntu.com/security/CVE-2025-37773",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37780",
                                "url": "https://ubuntu.com/security/CVE-2025-37780",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37781",
                                "url": "https://ubuntu.com/security/CVE-2025-37781",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37782",
                                "url": "https://ubuntu.com/security/CVE-2025-37782",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                                "cve_priority": "negligible",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-0927",
                                "url": "https://ubuntu.com/security/CVE-2025-0927",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-23 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37871",
                                "url": "https://ubuntu.com/security/CVE-2025-37871",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37787",
                                "url": "https://ubuntu.com/security/CVE-2025-37787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37788",
                                "url": "https://ubuntu.com/security/CVE-2025-37788",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37789",
                                "url": "https://ubuntu.com/security/CVE-2025-37789",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37790",
                                "url": "https://ubuntu.com/security/CVE-2025-37790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37875",
                                "url": "https://ubuntu.com/security/CVE-2025-37875",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37792",
                                "url": "https://ubuntu.com/security/CVE-2025-37792",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37867",
                                "url": "https://ubuntu.com/security/CVE-2025-37867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37982",
                                "url": "https://ubuntu.com/security/CVE-2025-37982",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37794",
                                "url": "https://ubuntu.com/security/CVE-2025-37794",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37796",
                                "url": "https://ubuntu.com/security/CVE-2025-37796",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37838",
                                "url": "https://ubuntu.com/security/CVE-2025-37838",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-18 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37940",
                                "url": "https://ubuntu.com/security/CVE-2025-37940",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23142",
                                "url": "https://ubuntu.com/security/CVE-2025-23142",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37892",
                                "url": "https://ubuntu.com/security/CVE-2025-37892",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23145",
                                "url": "https://ubuntu.com/security/CVE-2025-23145",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23146",
                                "url": "https://ubuntu.com/security/CVE-2025-23146",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37839",
                                "url": "https://ubuntu.com/security/CVE-2025-37839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23147",
                                "url": "https://ubuntu.com/security/CVE-2025-23147",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23150",
                                "url": "https://ubuntu.com/security/CVE-2025-23150",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23151",
                                "url": "https://ubuntu.com/security/CVE-2025-23151",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23156",
                                "url": "https://ubuntu.com/security/CVE-2025-23156",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23157",
                                "url": "https://ubuntu.com/security/CVE-2025-23157",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37840",
                                "url": "https://ubuntu.com/security/CVE-2025-37840",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23158",
                                "url": "https://ubuntu.com/security/CVE-2025-23158",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23159",
                                "url": "https://ubuntu.com/security/CVE-2025-23159",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37850",
                                "url": "https://ubuntu.com/security/CVE-2025-37850",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37851",
                                "url": "https://ubuntu.com/security/CVE-2025-37851",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23161",
                                "url": "https://ubuntu.com/security/CVE-2025-23161",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23163",
                                "url": "https://ubuntu.com/security/CVE-2025-23163",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37857",
                                "url": "https://ubuntu.com/security/CVE-2025-37857",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37738",
                                "url": "https://ubuntu.com/security/CVE-2025-37738",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37739",
                                "url": "https://ubuntu.com/security/CVE-2025-37739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37740",
                                "url": "https://ubuntu.com/security/CVE-2025-37740",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37741",
                                "url": "https://ubuntu.com/security/CVE-2025-37741",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37858",
                                "url": "https://ubuntu.com/security/CVE-2025-37858",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37742",
                                "url": "https://ubuntu.com/security/CVE-2025-37742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37859",
                                "url": "https://ubuntu.com/security/CVE-2025-37859",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37862",
                                "url": "https://ubuntu.com/security/CVE-2025-37862",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37841",
                                "url": "https://ubuntu.com/security/CVE-2025-37841",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37749",
                                "url": "https://ubuntu.com/security/CVE-2025-37749",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37756",
                                "url": "https://ubuntu.com/security/CVE-2025-37756",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37757",
                                "url": "https://ubuntu.com/security/CVE-2025-37757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37758",
                                "url": "https://ubuntu.com/security/CVE-2025-37758",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53051",
                                "url": "https://ubuntu.com/security/CVE-2024-53051",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46787",
                                "url": "https://ubuntu.com/security/CVE-2024-46787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37890",
                                "url": "https://ubuntu.com/security/CVE-2025-37890",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-16 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37997",
                                "url": "https://ubuntu.com/security/CVE-2025-37997",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-29 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37798",
                                "url": "https://ubuntu.com/security/CVE-2025-37798",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37750",
                                "url": "https://ubuntu.com/security/CVE-2025-37750",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53185",
                                "url": "https://ubuntu.com/security/CVE-2024-53185",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50047",
                                "url": "https://ubuntu.com/security/CVE-2024-50047",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                                "cve_priority": "high",
                                "cve_public_date": "2024-10-21 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * jammy/linux-kvm: 5.15.0-1084.89 -proposed tracker (LP: #2114567)",
                            "",
                            "  [ Ubuntu: 5.15.0-144.157 ]",
                            "",
                            "  * jammy/linux: 5.15.0-144.157 -proposed tracker (LP: #2114581)",
                            "  * cifs: NULL pointer dereference in refresh_cache_worker (LP: #2112440)",
                            "    - cifs: fix NULL ptr dereference in refresh_mounts()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581)",
                            "    - platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection",
                            "    - tracing: probes: Fix a possible race in trace_probe_log APIs",
                            "    - iio: adc: ad7768-1: Fix insufficient alignment of timestamp.",
                            "    - iio: chemical: sps30: use aligned_s64 for timestamp",
                            "    - RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug",
                            "    - nfs: handle failure of nfs_get_lock_context in unlock path",
                            "    - spi: loopback-test: Do not split 1024-byte hexdumps",
                            "    - net: cadence: macb: Fix a possible deadlock in macb_halt_tx.",
                            "    - net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING",
                            "    - ALSA: sh: SND_AICA should depend on SH_DMA_API",
                            "    - qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd()",
                            "    - NFSv4/pnfs: Reset the layout state after a layoutreturn",
                            "    - x86,nospec: Simplify {JMP,CALL}_NOSPEC",
                            "    - x86/speculation: Simplify and make CALL_NOSPEC consistent",
                            "    - x86/speculation: Add a conditional CS prefix to CALL_NOSPEC",
                            "    - x86/speculation: Remove the extra #ifdef around CALL_NOSPEC",
                            "    - Documentation: x86/bugs/its: Add ITS documentation",
                            "    - x86/its: Enumerate Indirect Target Selection (ITS) bug",
                            "    - x86/its: Add support for ITS-safe indirect thunk",
                            "    - [Config] enable ITS mitigation",
                            "    - x86/alternative: Optimize returns patching",
                            "    - x86/alternatives: Remove faulty optimization",
                            "    - x86/its: Add support for ITS-safe return thunk",
                            "    - x86/its: Enable Indirect Target Selection mitigation",
                            "    - x86/its: Add \"vmexit\" option to skip mitigation on some CPUs",
                            "    - x86/its: Align RETs in BHB clear sequence to avoid thunking",
                            "    - x86/its: Use dynamic thunks for indirect branches",
                            "    - x86/its: Fix build errors when CONFIG_MODULES=n",
                            "    - x86/its: FineIBT-paranoid vs ITS",
                            "    - dmaengine: Revert \"dmaengine: dmatest: Fix dmatest waiting less when",
                            "      interrupted\"",
                            "    - btrfs: fix discard worker infinite loop after disabling discard",
                            "    - ACPI: PPTT: Fix processor subtable walk",
                            "    - ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()",
                            "    - ALSA: usb-audio: Add sample rate quirk for Audioengine D1",
                            "    - ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera",
                            "    - ftrace: Fix preemption accounting for stacktrace trigger command",
                            "    - ftrace: Fix preemption accounting for stacktrace filter command",
                            "    - tracing: samples: Initialize trace_array_printk() with the correct",
                            "      function",
                            "    - phy: Fix error handling in tegra_xusb_port_init",
                            "    - phy: renesas: rcar-gen3-usb2: Set timing registers only once",
                            "    - wifi: mt76: disable napi on driver removal",
                            "    - dmaengine: ti: k3-udma: Add missing locking",
                            "    - dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure",
                            "      instead of a local copy",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_engines",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_groups",
                            "    - block: fix direct io NOWAIT flag not work",
                            "    - clocksource/i8253: Use raw_spinlock_irqsave() in",
                            "      clockevent_i8253_disable()",
                            "    - usb: typec: fix pm usage counter imbalance in ucsi_ccg_sync_control()",
                            "    - selftests/mm: compaction_test: support platform with huge mount of",
                            "      memory",
                            "    - netfilter: nf_tables: pass nft_chain to destroy function, not nft_ctx",
                            "    - netfilter: nf_tables: wait for rcu grace period on net_device removal",
                            "    - netfilter: nf_tables: do not defer rule destruction via call_rcu",
                            "    - x86/modules: Set VM_FLUSH_RESET_PERMS in module_alloc()",
                            "    - Linux 5.15.184",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49063",
                            "    - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49168",
                            "    - btrfs: do not clean up repair bio if submit fails",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-46751",
                            "    - btrfs: don't BUG_ON() when 0 reference count at",
                            "      btrfs_lookup_extent_info()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-22062",
                            "    - sctp: add mutual exclusion in proc_sctp_do_udp_port()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-53203",
                            "    - usb: typec: fix potential array underflow in ucsi_ccg_sync_control()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-35790",
                            "    - usb: typec: altmodes/displayport: create sysfs nodes as driver's default",
                            "      device attribute group",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37967",
                            "    - usb: typec: ucsi: displayport: Fix deadlock",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37992",
                            "    - net_sched: Flush gso_skb list too during ->change()",
                            "  * Mounting btrfs LVM volumes changes mountpoint location and breaks lsblk",
                            "    output (LP: #2107516)",
                            "    - SAUCE: Revert \"btrfs: avoid unnecessary device path update for the same",
                            "      device\"",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705)",
                            "    - can: mcan: m_can_class_unregister(): fix order of unregistration calls",
                            "    - can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls",
                            "    - openvswitch: Fix unsafe attribute parsing in output_userspace()",
                            "    - gre: Fix again IPv6 link-local address generation.",
                            "    - can: gw: use call_rcu() instead of costly synchronize_rcu()",
                            "    - rcu/kvfree: Add kvfree_rcu_mightsleep() and kfree_rcu_mightsleep()",
                            "    - can: gw: fix RCU/BH usage in cgw_create_job()",
                            "    - net: dsa: b53: allow leaky reserved multicast",
                            "    - net: dsa: b53: fix clearing PVID of a port",
                            "    - net: dsa: b53: fix flushing old pvid VLAN on pvid change",
                            "    - net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave",
                            "    - net: dsa: b53: always rejoin default untagged VLAN on bridge leave",
                            "    - net: dsa: b53: fix learning on VLAN unaware bridges",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30-D",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30L-G",
                            "    - Input: synaptics - enable InterTouch on Dell Precision M3800",
                            "    - Input: synaptics - enable SMBus for HP Elitebook 850 G1",
                            "    - Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5",
                            "    - staging: iio: adc: ad7816: Correct conditional logic for store mode",
                            "    - staging: axis-fifo: Remove hardware resets for user errors",
                            "    - staging: axis-fifo: Correct handling of tx_fifo_depth for size",
                            "      validation",
                            "    - iio: adc: ad7606: fix serial register access",
                            "    - iio: adis16201: Correct inclinometer channel resolution",
                            "    - drm/amd/display: Fix wrong handling for AUX_DEFER case",
                            "    - usb: uhci-platform: Make the clock really optional",
                            "    - module: ensure that kobject_put() is safe for module type kobjects",
                            "    - ocfs2: switch osb->disable_recovery to enum",
                            "    - ocfs2: implement handshaking with ocfs2 recovery thread",
                            "    - ocfs2: stop quota recovery before disabling quotas",
                            "    - usb: cdnsp: Fix issue with resuming from L1",
                            "    - usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version",
                            "    - usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN",
                            "    - usb: host: tegra: Prevent host controller crash when OTG port is used",
                            "    - usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition",
                            "    - usb: typec: ucsi: displayport: Fix NULL pointer access",
                            "    - USB: usbtmc: use interruptible sleep in usbtmc_read",
                            "    - usb: usbtmc: Fix erroneous get_stb ioctl error returns",
                            "    - usb: usbtmc: Fix erroneous wait_srq ioctl return",
                            "    - usb: usbtmc: Fix erroneous generic_read ioctl return",
                            "    - types: Complement the aligned types with signed 64-bit one",
                            "    - iio: adc: dln2: Use aligned_s64 for timestamp",
                            "    - MIPS: Fix MAX_REG_OFFSET",
                            "    - drm/panel: simple: Update timings for AUO G101EVN010",
                            "    - nvme: unblock ctrl state transition for firmware update",
                            "    - do_umount(): add missing barrier before refcount checks in sync case",
                            "    - x86/bpf: Call branch history clearing sequence on exit",
                            "    - x86/bpf: Add IBHF call at end of classic BPF",
                            "    - x86/bhi: Do not set BHI_DIS_S in 32-bit mode",
                            "    - Linux 5.15.183",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37949",
                            "    - xenbus: Use kref to track req lifetime",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37969",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37970",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37964",
                            "    - x86/mm: Eliminate window where TLB flushes may be inadvertently skipped",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618)",
                            "    - ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset",
                            "    - EDAC/altera: Test the correct error reg offset",
                            "    - EDAC/altera: Set DDR and SDMMC interrupt mask before registration",
                            "    - i2c: imx-lpi2c: Fix clock count when probe defers",
                            "    - arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays",
                            "    - amd-xgbe: Fix to ensure dependent features are toggled with RX checksum",
                            "      offload",
                            "    - mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe",
                            "    - dm-integrity: fix a warning on invalid table line",
                            "    - dm: always update the array size in realloc_argv on success",
                            "    - iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)",
                            "    - net/mlx5: E-Switch, Initialize MAC Address for Default GID",
                            "    - net/mlx5: E-switch, Fix error handling for enabling roce",
                            "    - net: ethernet: mtk-star-emac: separate tx/rx handling with two NAPIs",
                            "    - net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx",
                            "      poll",
                            "    - net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when",
                            "      advised",
                            "    - ice: Refactor promiscuous functions",
                            "    - net: dlink: Correct endianness handling of led_mode",
                            "    - net: ipv6: fix UDPv6 GSO segmentation with NAT",
                            "    - bnxt_en: Fix coredump logic to free allocated buffer",
                            "    - bnxt_en: Fix ethtool -d byte order for 32-bit values",
                            "    - nvme-tcp: fix premature queue removal and I/O failover",
                            "    - net: fec: ERR007885 Workaround for conventional TX",
                            "    - net: hns3: store rx VLAN tag offload state for VF",
                            "    - net: hns3: add support for external loopback test",
                            "    - net: hns3: fix an interrupt residual problem",
                            "    - net: hns3: fixed debugfs tm_qset size",
                            "    - net: hns3: defer calling ptp_clock_register()",
                            "    - PCI: imx6: Skip controller_id generation logic for i.MX7D",
                            "    - net: hns3: fix deadlock issue when externel_lb and reset are executed",
                            "      together",
                            "    - ARM: dts: opos6ul: add ksz8081 phy properties",
                            "    - Revert \"drm/meson: vclk: fix calculation of 59.94 fractional rates\"",
                            "    - irqchip/gic-v2m: Add const to of_device_id",
                            "    - irqchip/gic-v2m: Mark a few functions __init",
                            "    - iommu/arm-smmu-v3: Use the new rb tree helpers",
                            "    - iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream",
                            "      ids",
                            "    - dm: fix copying after src array boundaries",
                            "    - Linux 5.15.182",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2022-21546",
                            "    - scsi: target: Fix WRITE_SAME No Data Buffer crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37819",
                            "    - irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37905",
                            "    - firmware: arm_scmi: Balance device refcount when destroying devices",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-38541",
                            "    - of: module: add buffer overflow check in of_modalias()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37909",
                            "    - net: lan743x: Fix memleak issue when GSO enabled",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37911",
                            "    - bnxt_en: Fix out-of-bound memcpy() during ethtool -w",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37912",
                            "    - ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37913",
                            "    - net_sched: qfq: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37914",
                            "    - net_sched: ets: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37915",
                            "    - net_sched: drr: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-26739",
                            "    - net/sched: act_mirred: don't override retval if we already lost the skb",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-21839",
                            "    - KVM: x86: Load DR6 with guest value only before entering .vcpu_run()",
                            "      loop",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37923",
                            "    - tracing: Fix oob write in trace_seq_to_buffer()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37927",
                            "    - iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37990",
                            "    - wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37991",
                            "    - parisc: Fix double SIGFPE crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37930",
                            "    - drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606)",
                            "    - net: ethtool: Don't call .cleanup_data when prepare_data fails",
                            "    - ata: sata_sx4: Drop pointless VPRINTK() calls and convert the remaining",
                            "      ones",
                            "    - ata: sata_sx4: Add error handling in pdc20621_i2c_read()",
                            "    - nvmet-fcloop: swap list_add_tail arguments",
                            "    - nft_set_pipapo: fix incorrect avx2 match of 5th field octet",
                            "    - umount: Allow superblock owners to force umount",
                            "    - x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD",
                            "      when running in a virtual machine",
                            "    - perf: arm_pmu: Don't disable counter in armpmu_add()",
                            "    - arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD",
                            "    - xen/mcelog: Add __nonstring annotations for unterminated strings",
                            "    - HID: pidff: Convert infinite length from Linux API to PID standard",
                            "    - HID: pidff: Do not send effect envelope if it's empty",
                            "    - ALSA: hda: intel: Fix Optimus when GPU has no sound",
                            "    - ASoC: fsl_audmix: register card device depends on 'dais' property",
                            "    - ALSA: usb-audio: Fix CME quirk for UF series keyboards",
                            "    - fs/jfs: cast inactags to s64 to prevent potential overflow",
                            "    - ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode",
                            "    - ahci: add PCI ID for Marvell 88SE9215 SATA Controller",
                            "    - ext4: protect ext4_release_dquot against freezing",
                            "    - wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table",
                            "    - tracing: fix return value in __ftrace_event_enable_disable for",
                            "      TRACE_REG_UNREGISTER",
                            "    - Bluetooth: hci_uart: fix race during initialization",
                            "    - drm: allow encoder mode_set even when connectors change for crtc",
                            "    - drm/amd/display: Update Cursor request mode to the beginning prefetch",
                            "      always",
                            "    - drm: panel-orientation-quirks: Add support for AYANEO 2S",
                            "    - drm: panel-orientation-quirks: Add new quirk for GPD Win 2",
                            "    - drm/bridge: panel: forbid initializing a panel with unknown connector",
                            "      type",
                            "    - drivers: base: devres: Allow to release group on device release",
                            "    - drm/amdkfd: clamp queue size to minimum",
                            "    - drm/amdkfd: Fix pqm_destroy_queue race with GPU reset",
                            "    - drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off",
                            "    - ktest: Fix Test Failures Due to Missing LOG_FILE Directories",
                            "    - pwm: rcar: Simplify multiplication/shift logic",
                            "    - pwm: rcar: Improve register calculation",
                            "    - pwm: fsl-ftm: Handle clk_get_rate() returning 0",
                            "    - bpf: Add endian modifiers to fix endian warnings",
                            "    - bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags",
                            "    - ext4: don't treat fhandle lookup of ea_inode as FS corruption",
                            "    - media: i2c: adv748x: Fix test pattern selection mask",
                            "    - media: vim2m: print device name after registering device",
                            "    - media: siano: Fix error handling in smsdvb_module_init()",
                            "    - xenfs/xensyms: respect hypervisor's \"next\" indication",
                            "    - arm64: cputype: Add MIDR_CORTEX_A76AE",
                            "    - arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list",
                            "    - arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB",
                            "    - arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe",
                            "      list",
                            "    - spi: cadence-qspi: Fix probe on AM62A LP SK",
                            "    - media: streamzap: prevent processing IR data on URB failure",
                            "    - media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in remove",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in probe",
                            "    - media: i2c: ov7251: Set enable GPIO low in probe",
                            "    - media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO",
                            "    - mtd: Add check for devm_kcalloc()",
                            "    - net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320",
                            "      family",
                            "    - mtd: Replace kcalloc() with devm_kcalloc()",
                            "    - clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init",
                            "      wakeup",
                            "    - wifi: mt76: Add check for devm_kstrdup()",
                            "    - wifi: mac80211: fix integer overflow in hwmp_route_info_get()",
                            "    - ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path",
                            "    - vdpa/mlx5: Fix oversized null mkey longer than 32bit",
                            "    - i3c: master: svc: Use readsb helper for reading MDB",
                            "    - locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()",
                            "    - lib: scatterlist: fix sg_split_phys to preserve original scatterlist",
                            "      offsets",
                            "    - mptcp: only inc MPJoinAckHMacFailure for HMAC failures",
                            "    - mtd: rawnand: Add status chack in r852_ready()",
                            "    - arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string",
                            "    - sparc/mm: disable preemption in lazy mmu mode",
                            "    - mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock",
                            "    - mm/hwpoison: do not send SIGBUS to processes with recovered clean pages",
                            "    - thermal/drivers/rockchip: Add missing rk3328 mapping entry",
                            "    - crypto: ccp - Fix check for the primary ASP device",
                            "    - dm-integrity: set ti->error on memory allocation failure",
                            "    - gpio: zynq: Fix wakeup source leaks on device unbind",
                            "    - ntb: use 64-bit arithmetic for the MSI doorbell mask",
                            "    - of/irq: Fix device node refcount leakages in of_irq_count()",
                            "    - of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()",
                            "    - of/irq: Fix device node refcount leakages in of_irq_init()",
                            "    - PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()",
                            "    - PCI: Fix reference leak in pci_alloc_child_bus()",
                            "    - pinctrl: qcom: Clear latched interrupt status when changing IRQ type",
                            "    - arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected()",
                            "      lists",
                            "    - ACPI: platform-profile: Fix CFI violation when accessing sysfs files",
                            "    - x86/e820: Fix handling of subpage regions when calculating nosave ranges",
                            "      in e820__register_nosave_regions()",
                            "    - Bluetooth: hci_uart: Fix another race during initialization",
                            "    - scsi: hisi_sas: Start delivery hisi_sas_task_exec() directly",
                            "    - scsi: hisi_sas: Pass abort structure for internal abort",
                            "    - scsi: hisi_sas: Factor out task prep and delivery code",
                            "    - scsi: hisi_sas: Fix setting of hisi_sas_slot.is_internal",
                            "    - scsi: libsas: Delete lldd_clear_aca callback",
                            "    - scsi: libsas: Add struct sas_tmf_task",
                            "    - scsi: hisi_sas: Enable force phy when SATA disk directly connected",
                            "    - wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()",
                            "    - scsi: iscsi: Fix missing scsi_host_put() in error path",
                            "    - md/raid10: fix missing discard IO accounting",
                            "    - RDMA/usnic: Fix passing zero to PTR_ERR in usnic_ib_pci_probe()",
                            "    - RDMA/hns: Fix wrong maximum DMA segment size",
                            "    - Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid",
                            "      address",
                            "    - Bluetooth: l2cap: Check encryption key size on incoming connection",
                            "    - Revert \"wifi: mac80211: Update skb's control block key in",
                            "      ieee80211_tx_dequeue()\"",
                            "    - igc: move ktime snapshot into PTM retry loop",
                            "    - igc: handle the IGC_PTP_ENABLED flag correctly",
                            "    - igc: cleanup PTP module if probe fails",
                            "    - net: b53: enable BPDU reception for management port",
                            "    - net: dsa: avoid refcount warnings when ds->ops->tag_8021q_vlan_del()",
                            "      fails",
                            "    - riscv: Properly export reserved regions in /proc/iomem",
                            "    - riscv: KGDB: Do not inline arch_kgdb_breakpoint()",
                            "    - riscv: KGDB: Remove \".option norvc/.option rvc\" for kgdb_compiled_break",
                            "    - cpufreq/sched: Fix the usage of CPUFREQ_NEED_UPDATE_LIMITS",
                            "    - writeback: fix false warning in inode_to_wb()",
                            "    - Revert \"PCI: Avoid reset when disabled via sysfs\"",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix vi feedback rate",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix logic of enabling vi channels",
                            "    - asus-laptop: Fix an uninitialized variable",
                            "    - nfs: move nfs_fhandle_hash to common include file",
                            "    - nfs: add missing selections of CONFIG_CRC32",
                            "    - btrfs: correctly escape subvol in btrfs_show_options()",
                            "    - crypto: caam/qi - Fix drv_ctx refcount bug",
                            "    - loop: properly send KOBJ_CHANGED uevent for disk device",
                            "    - loop: LOOP_SET_FD: send uevents for partitions",
                            "    - mm/gup: fix wrongly calculated returned value in",
                            "      fault_in_safe_writeable()",
                            "    - riscv: Avoid fortify warning in syscall_get_arguments()",
                            "    - tracing: Fix filter string testing",
                            "    - perf/x86/intel: Allow to update user space GPRs from PEBS records",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SNR",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on ICX",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SPR",
                            "    - drm/repaper: fix integer overflows in repeat functions",
                            "    - drm/amdgpu/dma_buf: fix page_link check",
                            "    - drm/sti: remove duplicate object names",
                            "    - KVM: arm64: Get rid of host SVE tracking/saving",
                            "    - KVM: arm64: Always start with clearing SVE flag on load",
                            "    - KVM: arm64: Discard any SVE state when entering KVM guests",
                            "    - arm64/fpsimd: Track the saved FPSIMD state type separately to TIF_SVE",
                            "    - arm64/fpsimd: Have KVM explicitly say which FP registers to save",
                            "    - arm64/fpsimd: Stop using TIF_SVE to manage register saving in KVM",
                            "    - KVM: arm64: Unconditionally save+flush host FPSIMD/SVE/SME state",
                            "    - KVM: arm64: Remove host FPSIMD saving for non-protected KVM",
                            "    - KVM: arm64: Remove VHE host restore of CPACR_EL1.ZEN",
                            "    - KVM: arm64: Calculate cptr_el2 traps on activating traps",
                            "    - KVM: arm64: Eagerly switch ZCR_EL{1,2}",
                            "    - cpufreq: Reference count policy in cpufreq_update_limits()",
                            "    - kbuild: Add '-fno-builtin-wcslen'",
                            "    - mptcp: sockopt: fix getting IPV6_V6ONLY",
                            "    - misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq'",
                            "      error",
                            "    - misc: pci_endpoint_test: Fix 'irq_type' to convey the correct type",
                            "    - x86/pvh: Call C code via the kernel virtual mapping",
                            "    - landlock: Add the errata interface",
                            "    - nvmet-fc: Remove unused functions",
                            "    - Revert \"smb: client: fix use-after-free bug in",
                            "      cifs_debug_data_proc_show()\"",
                            "    - smb: client: fix use-after-free bug in cifs_debug_data_proc_show()",
                            "    - blk-cgroup: support to track if policy is online",
                            "    - net: openvswitch: fix race on port output",
                            "    - openvswitch: fix lockup on tx to unregistering netdev with carrier",
                            "    - MIPS: dec: Declare which_prom() as static",
                            "    - MIPS: cevt-ds1287: Add missing ds1287.h include",
                            "    - MIPS: ds1287: Match ds1287_set_base_clock() function types",
                            "    - mm: fix apply_to_existing_page_range()",
                            "    - module: sign with sha512 instead of sha1 by default",
                            "    - media: streamzap: remove unnecessary ir_raw_event_reset and handle",
                            "    - media: streamzap: no need for usb pid/vid in device name",
                            "    - media: streamzap: less chatter",
                            "    - media: streamzap: remove unused struct members",
                            "    - auxdisplay: hd44780: Convert to platform remove callback returning void",
                            "    - auxdisplay: hd44780: Fix an API misuse in hd44780.c",
                            "    - net: dsa: mv88e6xxx: fix VTU methods for 6320 family",
                            "    - soc: samsung: exynos-chipid: avoid soc_device_to_device()",
                            "    - soc: samsung: exynos-chipid: Pass revision reg offsets",
                            "    - iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary",
                            "      return value check",
                            "    - iio: adc: ad7768-1: Fix conversion result sign",
                            "    - backlight: led_bl: Convert to platform remove callback returning void",
                            "    - cifs: print TIDs as hex",
                            "    - cifs: fix integer overflow in match_server()",
                            "    - gpio: tegra186: Force one interrupt per bank",
                            "    - gpio: tegra186: fix resource handling in ACPI probe path",
                            "    - Revert \"PCI: Coalesce host bridge contiguous apertures\"",
                            "    - PCI: Coalesce host bridge contiguous apertures",
                            "    - PCI: Assign PCI domain IDs by ida_alloc()",
                            "    - ksmbd: Prevent integer overflow in calculation of deadtime",
                            "    - selftests/mm: generate a temporary mountpoint for cgroup filesystem",
                            "    - kmsan: disable strscpy() optimization under KMSAN",
                            "    - string: Add load_unaligned_zeropad() code path to sized_strscpy()",
                            "    - drm/msm/a6xx: Improve gpu recovery sequence",
                            "    - drm/msm/a6xx: Handle GMU prepare-slumber hfi failure",
                            "    - drm/msm/a6xx: Avoid gx gbit halt during rpm suspend",
                            "    - drm/msm/a6xx: Fix stale rpmh votes from GPU",
                            "    - dma/contiguous: avoid warning about unused size_bytes",
                            "    - cpufreq: cppc: Fix invalid return value in .get() callback",
                            "    - iommu/amd: Return an error if vCPU affinity is set for non-vCPU IRTE",
                            "    - virtio_console: fix missing byte order handling for cols and rows",
                            "    - net: selftests: initialize TCP header and skb payload with zero",
                            "    - drm/amd/display: Fix gpu reset in multidisplay config",
                            "    - KVM: SVM: Allocate IR data using atomic allocation",
                            "    - USB: storage: quirk for ADATA Portable HDD CH94",
                            "    - mei: me: add panther lake H DID",
                            "    - serial: sifive: lock port in startup()/shutdown() callbacks",
                            "    - USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe",
                            "    - USB: serial: option: add Sierra Wireless EM9291",
                            "    - USB: serial: simple: add OWON HDS200 series oscilloscope support",
                            "    - usb: chipidea: ci_hdrc_imx: fix call balance of regulator routines",
                            "    - usb: chipidea: ci_hdrc_imx: implement usb_phy_init() error handling",
                            "    - USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)",
                            "    - usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive",
                            "    - usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive",
                            "    - USB: VLI disk crashes if LPM is used",
                            "    - USB: wdm: handle IO errors in wdm_wwan_port_start",
                            "    - USB: wdm: wdm_wwan_port_tx_complete mutex in atomic context",
                            "    - USB: wdm: add annotation",
                            "    - MIPS: cm: Detect CM quirks from device tree",
                            "    - clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec()",
                            "    - parisc: PDT: Fix missing prototype warning",
                            "    - s390/tty: Fix a potential memory leak bug",
                            "    - usb: host: max3421-hcd: Add missing spi_device_id table",
                            "    - fs/ntfs3: Fix WARNING in ntfs_extend_initialized_size",
                            "    - usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield",
                            "    - dmaengine: dmatest: Fix dmatest waiting less when interrupted",
                            "    - usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running",
                            "    - objtool, ASoC: codecs: wcd934x: Remove potential undefined behavior in",
                            "      wcd934x_slim_irq_handler()",
                            "    - ntb: reduce stack usage in idt_scan_mws",
                            "    - sched/isolation: Make CONFIG_CPU_ISOLATION depend on CONFIG_SMP",
                            "    - KVM: s390: Don't use %pK through tracepoints",
                            "    - selftests: ublk: fix test_stripe_04",
                            "    - xen: Change xen-acpi-processor dom0 dependency",
                            "    - nvme: requeue namespace scan on missed AENs",
                            "    - ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls",
                            "    - nvme: re-read ANA log page after ns scan completes",
                            "    - objtool: Stop UNRET validation on UD2",
                            "    - selftests/mincore: Allow read-ahead pages to reach the end of the file",
                            "    - x86/bugs: Use SBPB in write_ibpb() if applicable",
                            "    - x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline",
                            "    - x86/bugs: Don't fill RSB on context switch with eIBRS",
                            "    - nvmet-fc: take tgtport reference only once",
                            "    - nvmet-fc: put ref when assoc->del_work is already scheduled",
                            "    - ext4: make block validity check resistent to sb bh corruption",
                            "    - scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes",
                            "    - scsi: pm80xx: Set phy_attached to zero when device is gone",
                            "    - loop: aio inherit the ioprio of original request",
                            "    - ubsan: Fix panic from test_ubsan_out_of_bounds",
                            "    - md/raid1: Add check for missing source disk in process_checks()",
                            "    - jfs: define xtree root and page independently",
                            "    - comedi: jr3_pci: Fix synchronous deletion of timer",
                            "    - crypto: atmel-sha204a - Set hwrng quality to lowest possible",
                            "    - net: dsa: mv88e6xxx: fix atu_move_port_mask for 6341 family",
                            "    - net: dsa: mv88e6xxx: enable PVT for 6321 switch",
                            "    - net: dsa: mv88e6xxx: enable .port_set_policy() for 6320 family",
                            "    - xdp: Reset bpf_redirect_info before running a xdp's BPF prog.",
                            "    - MIPS: cm: Fix warning if MIPS_CM is disabled",
                            "    - nvme: fixup scan failure for non-ANA multipath controllers",
                            "    - PCI: Fix use-after-free in pci_bus_release_domain_nr()",
                            "    - PCI: Fix dropping valid root bus resources with .end = zero",
                            "    - PCI: Release resource invalidated by coalescing",
                            "    - Linux 5.15.181",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49989",
                            "    - drm/amd/display: fix double free issue during amdgpu module unload",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37803",
                            "    - udmabuf: fix a buf size overflow issue during udmabuf creation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37983",
                            "    - qibfs: fix _another_ leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37881",
                            "    - usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37805",
                            "    - sound/virtio: Fix cancel_sync warnings on uninitialized work_structs",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37883",
                            "    - s390/sclp: Add check for get_zeroed_page()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37808",
                            "    - crypto: null - Use spin lock instead of mutex",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37985",
                            "    - USB: wdm: close race between wdm_open and wdm_wwan_port_stop",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37810",
                            "    - usb: dwc3: gadget: check that event count does not exceed event buffer",
                            "      length",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37811",
                            "    - usb: chipidea: ci_hdrc_imx: fix usbmisc handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37812",
                            "    - usb: cdns3: Fix deadlock when using NCM gadget",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37885",
                            "    - KVM: x86: Reset IRTE to host control if *new* route isn't postable",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37817",
                            "    - mcb: fix a double free bug in chameleon_parse_gdd()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37823",
                            "    - net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37797",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37824",
                            "    - tipc: fix NULL pointer dereference in tipc_mon_reinit_self()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37989",
                            "    - net: phy: leds: fix memory leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37829",
                            "    - cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37830",
                            "    - cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37836",
                            "    - PCI: Fix reference leak in pci_register_host_bridge()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37844",
                            "    - cifs: avoid NULL pointer dereference in dbg call",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23144",
                            "    - backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23148",
                            "    - soc: samsung: exynos-chipid: Add NULL pointer check in",
                            "      exynos_chipid_probe()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-22027",
                            "    - media: streamzap: fix race between device disconnection and urb callback",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50125",
                            "    - Bluetooth: SCO: Fix UAF on sco_sock_timeout",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-49535",
                            "    - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI",
                            "      and PLOGI",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35943",
                            "    - pmdomain: ti: Add a null pointer check to the omap_prm_domain_init",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-26686",
                            "    - fs/proc: do_task_stat: use sig->stats_lock to gather the",
                            "      threads/children stats",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-48893",
                            "    - drm/i915/gt: Cleanup partial engine discovery failures",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50280",
                            "    - dm cache: fix flushing uninitialized delayed_work on cache_ctr error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-54458",
                            "    - scsi: ufs: bsg: Set bsg_queue to NULL after removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-42322",
                            "    - ipvs: properly dereference pe in ip_vs_add_service",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49960",
                            "    - ext4: fix timer use-after-free on failed mount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-36908",
                            "    - blk-iocost: do not WARN if iocg was already offlined",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-21853",
                            "    - bpf: avoid holding freeze_mutex during mmap operation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-53128",
                            "    - sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35867",
                            "    - smb: client: fix potential UAF in cifs_stats_proc_show()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52757",
                            "    - smb: client: fix potential deadlock when releasing mids",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46742",
                            "    - smb/server: fix potential null-ptr-deref of lease_ctx_info in",
                            "      smb2_open()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52572",
                            "    - cifs: Fix UAF in cifs_demultiplex_thread()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35866",
                            "    - smb: client: fix potential UAF in cifs_dump_full_key()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46816",
                            "    - drm/amd/display: Stop amdgpu_dm initialize when link nums greater than",
                            "      max_links",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46774",
                            "    - powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-38540",
                            "    - bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-27402",
                            "    - phonet/pep: fix racy skb_queue_empty() use",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50272",
                            "    - filemap: Fix bounds checking in filemap_read()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50258",
                            "    - net: fix crash when config small gso_max_size/gso_ipv4_max_size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-56751",
                            "    - ipv6: release nexthop on device removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23140",
                            "    - misc: pci_endpoint_test: Avoid issue of interrupts remaining after",
                            "      request_irq error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37765",
                            "    - drm/nouveau: prime: fix ttm_bo_delayed_delete oops",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37766",
                            "    - drm/amd/pm/powerplay/hwmgr/vega20_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37767",
                            "    - drm/amd/pm/swsmu/smu13/smu_v13_0: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768",
                            "    - drm/amd/pm/powerplay/hwmgr/smu7_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37770",
                            "    - drm/amd/pm/powerplay: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768 // CVE-2025-37771",
                            "    - drm/amd/pm: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37773",
                            "    - virtiofs: add filesystem context source name check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37780",
                            "    - isofs: Prevent the use of too small fid",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37781",
                            "    - i2c: cros-ec-tunnel: defer probe if parent EC is not present",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37782",
                            "    - hfs/hfsplus: fix slab-out-of-bounds in hfs_bnode_read_key",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-0927 has been rejected. Revert this fix and apply upstream fix",
                            "    - Revert \"UBUNTU: SAUCE: fs: hfs/hfsplus: add key_len boundary check to",
                            "      hfs_bnode_read_key\"",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37871",
                            "    - nfsd: decrease sc_count directly if fail to queue dl_recall",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37787",
                            "    - net: dsa: mv88e6xxx: avoid unregistering devlink regions which were",
                            "      never registered",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37788",
                            "    - cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37789",
                            "    - net: openvswitch: fix nested key length validation in the set() action",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37790",
                            "    - net: mctp: Set SOCK_RCU_FREE",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37875",
                            "    - igc: fix PTM cycle trigger logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37792",
                            "    - Bluetooth: btrtl: Prevent potential NULL dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37867",
                            "    - RDMA/core: Silence oversized kvmalloc() warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37982",
                            "    - wifi: wl1251: fix memory leak in wl1251_tx_work",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37794",
                            "    - wifi: mac80211: Purge vif txq in ieee80211_do_stop()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37796",
                            "    - wifi: at76c50x: fix use after free access in at76_disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37838",
                            "    - HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol",
                            "      Driver Due to Race Condition",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37940",
                            "    - ftrace: Add cond_resched() to ftrace_graph_set_hash()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23142",
                            "    - sctp: detect and prevent references to a freed transport in sendmsg",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37892",
                            "    - mtd: inftlcore: Add error check for inftl_read_oob()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23145",
                            "    - mptcp: fix NULL pointer in can_accept_new_subflow",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23146",
                            "    - mfd: ene-kb3930: Fix a potential NULL pointer dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37839",
                            "    - jbd2: remove wrong sb->s_sequence check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23147",
                            "    - i3c: Add NULL pointer check in i3c_master_queue_ibi()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23150",
                            "    - ext4: fix off-by-one error in do_split",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23151",
                            "    - bus: mhi: host: Fix race between unprepare and queue_buf",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23156",
                            "    - media: venus: hfi_parser: refactor hfi packet parsing logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23157",
                            "    - media: venus: hfi_parser: add check to avoid out of bound access",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37840",
                            "    - mtd: rawnand: brcmnand: fix PM resume warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23158",
                            "    - media: venus: hfi: add check to handle incorrect queue size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23159",
                            "    - media: venus: hfi: add a check to handle OOB in sfr region",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37850",
                            "    - pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37851",
                            "    - fbdev: omapfb: Add 'plane' value check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23161",
                            "    - PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23163",
                            "    - net: vlan: don't propagate flags on open",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37857",
                            "    - scsi: st: Fix array overflow in st_setup()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37738",
                            "    - ext4: ignore xattrs past end",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37739",
                            "    - f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37740",
                            "    - jfs: add sanity check for agwidth in dbMount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37741",
                            "    - jfs: Prevent copying of nlink with value 0 from disk inode",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37858",
                            "    - fs/jfs: Prevent integer overflow in AG size calculation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37742",
                            "    - jfs: Fix uninit-value access of imap allocated in the diMount() function",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37859",
                            "    - page_pool: avoid infinite loop to schedule delayed worker",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37862",
                            "    - HID: pidff: Fix null pointer dereference in pidff_find_fields",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37841",
                            "    - pm: cpupower: bench: Prevent NULL dereference on malloc failure",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37749",
                            "    - net: ppp: Add bound checking for skb data on ppp_sync_txmung",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37756",
                            "    - net: tls: explicitly disallow disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37757",
                            "    - tipc: fix memory leak in tipc_link_xmit",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37758",
                            "    - ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()",
                            "  * CVE-2024-53051",
                            "    - drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability",
                            "  * CVE-2024-46787",
                            "    - userfaultfd: fix checks for huge PMDs",
                            "  * CVE-2025-37890",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class with netem as child",
                            "      qdisc",
                            "    - sch_hfsc: Fix qlen accounting bug when using peek in hfsc_enqueue()",
                            "    - net_sched: hfsc: Address reentrant enqueue adding class to eltree twice",
                            "  * CVE-2025-37997",
                            "    - netfilter: ipset: fix region locking in hash types",
                            "  * CVE-2025-37798",
                            "    - sch_htb: make htb_qlen_notify() idempotent",
                            "    - sch_htb: make htb_deactivate() idempotent",
                            "    - sch_drr: make drr_qlen_notify() idempotent",
                            "    - sch_hfsc: make hfsc_qlen_notify() idempotent",
                            "    - sch_qfq: make qfq_qlen_notify() idempotent",
                            "    - sch_ets: make est_qlen_notify() idempotent",
                            "    - codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()",
                            "  * CVE-2025-37750",
                            "    - smb: client: fix UAF in decryption with multichannel",
                            "  * CVE-2024-53185",
                            "    - smb: client: fix NULL ptr deref in crypto_aead_setkey()",
                            "  * CVE-2024-50047",
                            "    - smb: client: fix UAF in async decryption",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] update variants",
                            "    - [Packaging] update annotations scripts",
                            ""
                        ],
                        "package": "linux-kvm",
                        "version": "5.15.0-1084.89",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2114567,
                            2114581,
                            2112440,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2107516,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            1786013
                        ],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 13:35:25 +0800"
                    }
                ],
                "notes": "linux-kvm-headers-5.15.0-1084 version '5.15.0-1084.89' (source package linux-kvm version '5.15.0-1084.89') was added. linux-kvm-headers-5.15.0-1084 version '5.15.0-1084.89' has the same source package name, linux-kvm, as removed package linux-headers-5.15.0-1083-kvm. As such we can use the source package version of the removed package, '5.15.0-1083.88', as the starting point in our changelog diff. Kernel packages are an example of where the binary package name changes for the same source package. Using the removed package source package version as our starting point means we can still get meaningful changelog diffs even for what appears to be a new package.",
                "is_version_downgrade": false
            },
            {
                "name": "linux-modules-5.15.0-1084-kvm",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1084.89",
                    "version": "5.15.0-1084.89"
                },
                "cves": [
                    {
                        "cve": "CVE-2022-49063",
                        "url": "https://ubuntu.com/security/CVE-2022-49063",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49168",
                        "url": "https://ubuntu.com/security/CVE-2022-49168",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:00:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46751",
                        "url": "https://ubuntu.com/security/CVE-2024-46751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22062",
                        "url": "https://ubuntu.com/security/CVE-2025-22062",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53203",
                        "url": "https://ubuntu.com/security/CVE-2024-53203",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35790",
                        "url": "https://ubuntu.com/security/CVE-2024-35790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37967",
                        "url": "https://ubuntu.com/security/CVE-2025-37967",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37992",
                        "url": "https://ubuntu.com/security/CVE-2025-37992",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-26 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37949",
                        "url": "https://ubuntu.com/security/CVE-2025-37949",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37969",
                        "url": "https://ubuntu.com/security/CVE-2025-37969",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37970",
                        "url": "https://ubuntu.com/security/CVE-2025-37970",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37964",
                        "url": "https://ubuntu.com/security/CVE-2025-37964",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-21546",
                        "url": "https://ubuntu.com/security/CVE-2022-21546",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37819",
                        "url": "https://ubuntu.com/security/CVE-2025-37819",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37905",
                        "url": "https://ubuntu.com/security/CVE-2025-37905",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38541",
                        "url": "https://ubuntu.com/security/CVE-2024-38541",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37909",
                        "url": "https://ubuntu.com/security/CVE-2025-37909",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37911",
                        "url": "https://ubuntu.com/security/CVE-2025-37911",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37912",
                        "url": "https://ubuntu.com/security/CVE-2025-37912",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37913",
                        "url": "https://ubuntu.com/security/CVE-2025-37913",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37914",
                        "url": "https://ubuntu.com/security/CVE-2025-37914",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37915",
                        "url": "https://ubuntu.com/security/CVE-2025-37915",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26739",
                        "url": "https://ubuntu.com/security/CVE-2024-26739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21839",
                        "url": "https://ubuntu.com/security/CVE-2025-21839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-07 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37923",
                        "url": "https://ubuntu.com/security/CVE-2025-37923",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37927",
                        "url": "https://ubuntu.com/security/CVE-2025-37927",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37990",
                        "url": "https://ubuntu.com/security/CVE-2025-37990",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37991",
                        "url": "https://ubuntu.com/security/CVE-2025-37991",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37930",
                        "url": "https://ubuntu.com/security/CVE-2025-37930",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49989",
                        "url": "https://ubuntu.com/security/CVE-2024-49989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37803",
                        "url": "https://ubuntu.com/security/CVE-2025-37803",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37983",
                        "url": "https://ubuntu.com/security/CVE-2025-37983",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37881",
                        "url": "https://ubuntu.com/security/CVE-2025-37881",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37805",
                        "url": "https://ubuntu.com/security/CVE-2025-37805",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37883",
                        "url": "https://ubuntu.com/security/CVE-2025-37883",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37808",
                        "url": "https://ubuntu.com/security/CVE-2025-37808",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37985",
                        "url": "https://ubuntu.com/security/CVE-2025-37985",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37810",
                        "url": "https://ubuntu.com/security/CVE-2025-37810",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37811",
                        "url": "https://ubuntu.com/security/CVE-2025-37811",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37812",
                        "url": "https://ubuntu.com/security/CVE-2025-37812",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37885",
                        "url": "https://ubuntu.com/security/CVE-2025-37885",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37817",
                        "url": "https://ubuntu.com/security/CVE-2025-37817",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37823",
                        "url": "https://ubuntu.com/security/CVE-2025-37823",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37797",
                        "url": "https://ubuntu.com/security/CVE-2025-37797",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37824",
                        "url": "https://ubuntu.com/security/CVE-2025-37824",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37989",
                        "url": "https://ubuntu.com/security/CVE-2025-37989",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37829",
                        "url": "https://ubuntu.com/security/CVE-2025-37829",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37830",
                        "url": "https://ubuntu.com/security/CVE-2025-37830",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-08 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37836",
                        "url": "https://ubuntu.com/security/CVE-2025-37836",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37844",
                        "url": "https://ubuntu.com/security/CVE-2025-37844",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23144",
                        "url": "https://ubuntu.com/security/CVE-2025-23144",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23148",
                        "url": "https://ubuntu.com/security/CVE-2025-23148",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-22027",
                        "url": "https://ubuntu.com/security/CVE-2025-22027",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-16 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50125",
                        "url": "https://ubuntu.com/security/CVE-2024-50125",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-05 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-49535",
                        "url": "https://ubuntu.com/security/CVE-2022-49535",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-26 07:01:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35943",
                        "url": "https://ubuntu.com/security/CVE-2024-35943",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-26686",
                        "url": "https://ubuntu.com/security/CVE-2024-26686",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-04-03 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2022-48893",
                        "url": "https://ubuntu.com/security/CVE-2022-48893",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-21 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50280",
                        "url": "https://ubuntu.com/security/CVE-2024-50280",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-54458",
                        "url": "https://ubuntu.com/security/CVE-2024-54458",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-02-27 03:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-42322",
                        "url": "https://ubuntu.com/security/CVE-2024-42322",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-08-17 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-49960",
                        "url": "https://ubuntu.com/security/CVE-2024-49960",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-10-21 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-36908",
                        "url": "https://ubuntu.com/security/CVE-2024-36908",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-30 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-21853",
                        "url": "https://ubuntu.com/security/CVE-2025-21853",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-12 10:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53128",
                        "url": "https://ubuntu.com/security/CVE-2024-53128",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                        "cve_priority": "negligible",
                        "cve_public_date": "2024-12-04 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35867",
                        "url": "https://ubuntu.com/security/CVE-2024-35867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52757",
                        "url": "https://ubuntu.com/security/CVE-2023-52757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-21 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46742",
                        "url": "https://ubuntu.com/security/CVE-2024-46742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-52572",
                        "url": "https://ubuntu.com/security/CVE-2023-52572",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-03-02 22:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-35866",
                        "url": "https://ubuntu.com/security/CVE-2024-35866",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-19 09:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46816",
                        "url": "https://ubuntu.com/security/CVE-2024-46816",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-27 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46774",
                        "url": "https://ubuntu.com/security/CVE-2024-46774",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-38540",
                        "url": "https://ubuntu.com/security/CVE-2024-38540",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-19 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-27402",
                        "url": "https://ubuntu.com/security/CVE-2024-27402",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-05-17 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50272",
                        "url": "https://ubuntu.com/security/CVE-2024-50272",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 02:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50258",
                        "url": "https://ubuntu.com/security/CVE-2024-50258",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-09 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-56751",
                        "url": "https://ubuntu.com/security/CVE-2024-56751",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-29 12:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23140",
                        "url": "https://ubuntu.com/security/CVE-2025-23140",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37765",
                        "url": "https://ubuntu.com/security/CVE-2025-37765",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37766",
                        "url": "https://ubuntu.com/security/CVE-2025-37766",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37767",
                        "url": "https://ubuntu.com/security/CVE-2025-37767",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37768",
                        "url": "https://ubuntu.com/security/CVE-2025-37768",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37770",
                        "url": "https://ubuntu.com/security/CVE-2025-37770",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37771",
                        "url": "https://ubuntu.com/security/CVE-2025-37771",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37773",
                        "url": "https://ubuntu.com/security/CVE-2025-37773",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37780",
                        "url": "https://ubuntu.com/security/CVE-2025-37780",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37781",
                        "url": "https://ubuntu.com/security/CVE-2025-37781",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37782",
                        "url": "https://ubuntu.com/security/CVE-2025-37782",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                        "cve_priority": "negligible",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-0927",
                        "url": "https://ubuntu.com/security/CVE-2025-0927",
                        "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-03-23 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37871",
                        "url": "https://ubuntu.com/security/CVE-2025-37871",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37787",
                        "url": "https://ubuntu.com/security/CVE-2025-37787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37788",
                        "url": "https://ubuntu.com/security/CVE-2025-37788",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37789",
                        "url": "https://ubuntu.com/security/CVE-2025-37789",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37790",
                        "url": "https://ubuntu.com/security/CVE-2025-37790",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37875",
                        "url": "https://ubuntu.com/security/CVE-2025-37875",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37792",
                        "url": "https://ubuntu.com/security/CVE-2025-37792",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37867",
                        "url": "https://ubuntu.com/security/CVE-2025-37867",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37982",
                        "url": "https://ubuntu.com/security/CVE-2025-37982",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 17:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37794",
                        "url": "https://ubuntu.com/security/CVE-2025-37794",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37796",
                        "url": "https://ubuntu.com/security/CVE-2025-37796",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37838",
                        "url": "https://ubuntu.com/security/CVE-2025-37838",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-04-18 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37940",
                        "url": "https://ubuntu.com/security/CVE-2025-37940",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 16:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23142",
                        "url": "https://ubuntu.com/security/CVE-2025-23142",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37892",
                        "url": "https://ubuntu.com/security/CVE-2025-37892",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-20 11:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23145",
                        "url": "https://ubuntu.com/security/CVE-2025-23145",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23146",
                        "url": "https://ubuntu.com/security/CVE-2025-23146",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37839",
                        "url": "https://ubuntu.com/security/CVE-2025-37839",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23147",
                        "url": "https://ubuntu.com/security/CVE-2025-23147",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23150",
                        "url": "https://ubuntu.com/security/CVE-2025-23150",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23151",
                        "url": "https://ubuntu.com/security/CVE-2025-23151",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23156",
                        "url": "https://ubuntu.com/security/CVE-2025-23156",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23157",
                        "url": "https://ubuntu.com/security/CVE-2025-23157",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37840",
                        "url": "https://ubuntu.com/security/CVE-2025-37840",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23158",
                        "url": "https://ubuntu.com/security/CVE-2025-23158",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23159",
                        "url": "https://ubuntu.com/security/CVE-2025-23159",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37850",
                        "url": "https://ubuntu.com/security/CVE-2025-37850",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37851",
                        "url": "https://ubuntu.com/security/CVE-2025-37851",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23161",
                        "url": "https://ubuntu.com/security/CVE-2025-23161",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-23163",
                        "url": "https://ubuntu.com/security/CVE-2025-23163",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37857",
                        "url": "https://ubuntu.com/security/CVE-2025-37857",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37738",
                        "url": "https://ubuntu.com/security/CVE-2025-37738",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37739",
                        "url": "https://ubuntu.com/security/CVE-2025-37739",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37740",
                        "url": "https://ubuntu.com/security/CVE-2025-37740",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37741",
                        "url": "https://ubuntu.com/security/CVE-2025-37741",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37858",
                        "url": "https://ubuntu.com/security/CVE-2025-37858",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37742",
                        "url": "https://ubuntu.com/security/CVE-2025-37742",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37859",
                        "url": "https://ubuntu.com/security/CVE-2025-37859",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37862",
                        "url": "https://ubuntu.com/security/CVE-2025-37862",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37841",
                        "url": "https://ubuntu.com/security/CVE-2025-37841",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-09 07:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37749",
                        "url": "https://ubuntu.com/security/CVE-2025-37749",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37756",
                        "url": "https://ubuntu.com/security/CVE-2025-37756",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37757",
                        "url": "https://ubuntu.com/security/CVE-2025-37757",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37758",
                        "url": "https://ubuntu.com/security/CVE-2025-37758",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53051",
                        "url": "https://ubuntu.com/security/CVE-2024-53051",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-11-19 18:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-46787",
                        "url": "https://ubuntu.com/security/CVE-2024-46787",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-09-18 08:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37890",
                        "url": "https://ubuntu.com/security/CVE-2025-37890",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-16 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37997",
                        "url": "https://ubuntu.com/security/CVE-2025-37997",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-29 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37798",
                        "url": "https://ubuntu.com/security/CVE-2025-37798",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-02 15:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2025-37750",
                        "url": "https://ubuntu.com/security/CVE-2025-37750",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                        "cve_priority": "medium",
                        "cve_public_date": "2025-05-01 13:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-53185",
                        "url": "https://ubuntu.com/security/CVE-2024-53185",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-12-27 14:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-50047",
                        "url": "https://ubuntu.com/security/CVE-2024-50047",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                        "cve_priority": "high",
                        "cve_public_date": "2024-10-21 20:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2114567,
                    2114581,
                    2112440,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2112581,
                    2107516,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111705,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111618,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    2111606,
                    1786013
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2022-49063",
                                "url": "https://ubuntu.com/security/CVE-2022-49063",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: arfs: fix use-after-free when freeing @rx_cpu_rmap  The CI testing bots triggered the following splat:  [  718.203054] BUG: KASAN: use-after-free in free_irq_cpu_rmap+0x53/0x80 [  718.206349] Read of size 4 at addr ffff8881bd127e00 by task sh/20834 [  718.212852] CPU: 28 PID: 20834 Comm: sh Kdump: loaded Tainted: G S     W IOE     5.17.0-rc8_nextqueue-devqueue-02643-g23f3121aca93 #1 [  718.219695] Hardware name: Intel Corporation S2600WFT/S2600WFT, BIOS SE5C620.86B.02.01.0012.070720200218 07/07/2020 [  718.223418] Call Trace: [  718.227139] [  718.230783]  dump_stack_lvl+0x33/0x42 [  718.234431]  print_address_description.constprop.9+0x21/0x170 [  718.238177]  ? free_irq_cpu_rmap+0x53/0x80 [  718.241885]  ? free_irq_cpu_rmap+0x53/0x80 [  718.245539]  kasan_report.cold.18+0x7f/0x11b [  718.249197]  ? free_irq_cpu_rmap+0x53/0x80 [  718.252852]  free_irq_cpu_rmap+0x53/0x80 [  718.256471]  ice_free_cpu_rx_rmap.part.11+0x37/0x50 [ice] [  718.260174]  ice_remove_arfs+0x5f/0x70 [ice] [  718.263810]  ice_rebuild_arfs+0x3b/0x70 [ice] [  718.267419]  ice_rebuild+0x39c/0xb60 [ice] [  718.270974]  ? asm_sysvec_apic_timer_interrupt+0x12/0x20 [  718.274472]  ? ice_init_phy_user_cfg+0x360/0x360 [ice] [  718.278033]  ? delay_tsc+0x4a/0xb0 [  718.281513]  ? preempt_count_sub+0x14/0xc0 [  718.284984]  ? delay_tsc+0x8f/0xb0 [  718.288463]  ice_do_reset+0x92/0xf0 [ice] [  718.292014]  ice_pci_err_resume+0x91/0xf0 [ice] [  718.295561]  pci_reset_function+0x53/0x80 <...> [  718.393035] Allocated by task 690: [  718.433497] Freed by task 20834: [  718.495688] Last potentially related work creation: [  718.568966] The buggy address belongs to the object at ffff8881bd127e00                 which belongs to the cache kmalloc-96 of size 96 [  718.574085] The buggy address is located 0 bytes inside of                 96-byte region [ffff8881bd127e00, ffff8881bd127e60) [  718.579265] The buggy address belongs to the page: [  718.598905] Memory state around the buggy address: [  718.601809]  ffff8881bd127d00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.604796]  ffff8881bd127d80: 00 00 00 00 00 00 00 00 00 00 fc fc fc fc fc fc [  718.607794] >ffff8881bd127e00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc [  718.610811]                    ^ [  718.613819]  ffff8881bd127e80: 00 00 00 00 00 00 00 00 00 00 00 00 fc fc fc fc [  718.617107]  ffff8881bd127f00: fa fb fb fb fb fb fb fb fb fb fb fb fc fc fc fc  This is due to that free_irq_cpu_rmap() is always being called *after* (devm_)free_irq() and thus it tries to work with IRQ descs already freed. For example, on device reset the driver frees the rmap right before allocating a new one (the splat above). Make rmap creation and freeing function symmetrical with {request,free}_irq() calls i.e. do that on ifup/ifdown instead of device probe/remove/resume. These operations can be performed independently from the actual device aRFS configuration. Also, make sure ice_vsi_free_irq() clears IRQ affinity notifiers only when aRFS is disabled -- otherwise, CPU rmap sets and clears its own and they must not be touched manually.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49168",
                                "url": "https://ubuntu.com/security/CVE-2022-49168",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: do not clean up repair bio if submit fails  The submit helper will always run bio_endio() on the bio if it fails to submit, so cleaning up the bio just leads to a variety of use-after-free and NULL pointer dereference bugs because we race with the endio function that is cleaning up the bio.  Instead just return BLK_STS_OK as the repair function has to continue to process the rest of the pages, and the endio for the repair bio will do the appropriate cleanup for the page that it was given.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:00:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46751",
                                "url": "https://ubuntu.com/security/CVE-2024-46751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  btrfs: don't BUG_ON() when 0 reference count at btrfs_lookup_extent_info()  Instead of doing a BUG_ON() handle the error by returning -EUCLEAN, aborting the transaction and logging an error message.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22062",
                                "url": "https://ubuntu.com/security/CVE-2025-22062",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: add mutual exclusion in proc_sctp_do_udp_port()  We must serialize calls to sctp_udp_sock_stop() and sctp_udp_sock_start() or risk a crash as syzbot reported:  Oops: general protection fault, probably for non-canonical address 0xdffffc000000000d: 0000 [#1] SMP KASAN PTI KASAN: null-ptr-deref in range [0x0000000000000068-0x000000000000006f] CPU: 1 UID: 0 PID: 6551 Comm: syz.1.44 Not tainted 6.14.0-syzkaller-g7f2ff7b62617 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025  RIP: 0010:kernel_sock_shutdown+0x47/0x70 net/socket.c:3653 Call Trace:  <TASK>   udp_tunnel_sock_release+0x68/0x80 net/ipv4/udp_tunnel_core.c:181   sctp_udp_sock_stop+0x71/0x160 net/sctp/protocol.c:930   proc_sctp_do_udp_port+0x264/0x450 net/sctp/sysctl.c:553   proc_sys_call_handler+0x3d0/0x5b0 fs/proc/proc_sysctl.c:601   iter_file_splice_write+0x91c/0x1150 fs/splice.c:738   do_splice_from fs/splice.c:935 [inline]   direct_splice_actor+0x18f/0x6c0 fs/splice.c:1158   splice_direct_to_actor+0x342/0xa30 fs/splice.c:1102   do_splice_direct_actor fs/splice.c:1201 [inline]   do_splice_direct+0x174/0x240 fs/splice.c:1227   do_sendfile+0xafd/0xe50 fs/read_write.c:1368   __do_sys_sendfile64 fs/read_write.c:1429 [inline]   __se_sys_sendfile64 fs/read_write.c:1415 [inline]   __x64_sys_sendfile64+0x1d8/0x220 fs/read_write.c:1415   do_syscall_x64 arch/x86/entry/syscall_64.c:63 [inline]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53203",
                                "url": "https://ubuntu.com/security/CVE-2024-53203",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: fix potential array underflow in ucsi_ccg_sync_control()  The \"command\" variable can be controlled by the user via debugfs.  The worry is that if con_index is zero then \"&uc->ucsi->connector[con_index - 1]\" would be an array underflow.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35790",
                                "url": "https://ubuntu.com/security/CVE-2024-35790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: usb: typec: altmodes/displayport: create sysfs nodes as driver's default device attribute group The DisplayPort driver's sysfs nodes may be present to the userspace before typec_altmode_set_drvdata() completes in dp_altmode_probe. This means that a sysfs read can trigger a NULL pointer error by deferencing dp->hpd in hpd_show or dp->lock in pin_assignment_show, as dev_get_drvdata() returns NULL in those cases. Remove manual sysfs node creation in favor of adding attribute group as default for devices bound to the driver. The ATTRIBUTE_GROUPS() macro is not used here otherwise the path to the sysfs nodes is no longer compliant with the ABI.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37967",
                                "url": "https://ubuntu.com/security/CVE-2025-37967",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: typec: ucsi: displayport: Fix deadlock  This patch introduces the ucsi_con_mutex_lock / ucsi_con_mutex_unlock functions to the UCSI driver. ucsi_con_mutex_lock ensures the connector mutex is only locked if a connection is established and the partner pointer is valid. This resolves a deadlock scenario where ucsi_displayport_remove_partner holds con->mutex waiting for dp_altmode_work to complete while dp_altmode_work attempts to acquire it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37992",
                                "url": "https://ubuntu.com/security/CVE-2025-37992",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: Flush gso_skb list too during ->change()  Previously, when reducing a qdisc's limit via the ->change() operation, only the main skb queue was trimmed, potentially leaving packets in the gso_skb list. This could result in NULL pointer dereference when we only check sch->limit against sch->q.qlen.  This patch introduces a new helper, qdisc_dequeue_internal(), which ensures both the gso_skb list and the main queue are properly flushed when trimming excess packets. All relevant qdiscs (codel, fq, fq_codel, fq_pie, hhf, pie) are updated to use this helper in their ->change() routines.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-26 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37949",
                                "url": "https://ubuntu.com/security/CVE-2025-37949",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  xenbus: Use kref to track req lifetime  Marek reported seeing a NULL pointer fault in the xenbus_thread callstack: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: e030:__wake_up_common+0x4c/0x180 Call Trace:  <TASK>  __wake_up_common_lock+0x82/0xd0  process_msg+0x18e/0x2f0  xenbus_thread+0x165/0x1c0  process_msg+0x18e is req->cb(req).  req->cb is set to xs_wake_up(), a thin wrapper around wake_up(), or xenbus_dev_queue_reply().  It seems like it was xs_wake_up() in this case.  It seems like req may have woken up the xs_wait_for_reply(), which kfree()ed the req.  When xenbus_thread resumes, it faults on the zero-ed data.  Linux Device Drivers 2nd edition states: \"Normally, a wake_up call can cause an immediate reschedule to happen, meaning that other processes might run before wake_up returns.\" ... which would match the behaviour observed.  Change to keeping two krefs on each request.  One for the caller, and one for xenbus_thread.  Each will kref_put() when finished, and the last will free it.  This use of kref matches the description in Documentation/core-api/kref.rst",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37969",
                                "url": "https://ubuntu.com/security/CVE-2025-37969",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo  Prevent st_lsm6dsx_read_tagged_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37970",
                                "url": "https://ubuntu.com/security/CVE-2025-37970",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo  Prevent st_lsm6dsx_read_fifo from falling in an infinite loop in case pattern_len is equal to zero and the device FIFO is not empty.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37964",
                                "url": "https://ubuntu.com/security/CVE-2025-37964",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  x86/mm: Eliminate window where TLB flushes may be inadvertently skipped  tl;dr: There is a window in the mm switching code where the new CR3 is set and the CPU should be getting TLB flushes for the new mm.  But should_flush_tlb() has a bug and suppresses the flush.  Fix it by widening the window where should_flush_tlb() sends an IPI.  Long Version:  === History ===  There were a few things leading up to this.  First, updating mm_cpumask() was observed to be too expensive, so it was made lazier.  But being lazy caused too many unnecessary IPIs to CPUs due to the now-lazy mm_cpumask().  So code was added to cull mm_cpumask() periodically[2].  But that culling was a bit too aggressive and skipped sending TLB flushes to CPUs that need them.  So here we are again.  === Problem ===  The too-aggressive code in should_flush_tlb() strikes in this window:  \t// Turn on IPIs for this CPU/mm combination, but only \t// if should_flush_tlb() agrees: \tcpumask_set_cpu(cpu, mm_cpumask(next));  \tnext_tlb_gen = atomic64_read(&next->context.tlb_gen); \tchoose_new_asid(next, next_tlb_gen, &new_asid, &need_flush); \tload_new_mm_cr3(need_flush); \t// ^ After 'need_flush' is set to false, IPIs *MUST* \t// be sent to this CPU and not be ignored.          this_cpu_write(cpu_tlbstate.loaded_mm, next); \t// ^ Not until this point does should_flush_tlb() \t// become true!  should_flush_tlb() will suppress TLB flushes between load_new_mm_cr3() and writing to 'loaded_mm', which is a window where they should not be suppressed.  Whoops.  === Solution ===  Thankfully, the fuzzy \"just about to write CR3\" window is already marked with loaded_mm==LOADED_MM_SWITCHING.  Simply checking for that state in should_flush_tlb() is sufficient to ensure that the CPU is targeted with an IPI.  This will cause more TLB flush IPIs.  But the window is relatively small and I do not expect this to cause any kind of measurable performance impact.  Update the comment where LOADED_MM_SWITCHING is written since it grew yet another user.  Peter Z also raised a concern that should_flush_tlb() might not observe 'loaded_mm' and 'is_lazy' in the same order that switch_mm_irqs_off() writes them.  Add a barrier to ensure that they are observed in the order they are written.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-21546",
                                "url": "https://ubuntu.com/security/CVE-2022-21546",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: target: Fix WRITE_SAME No Data Buffer crash  In newer version of the SBC specs, we have a NDOB bit that indicates there is no data buffer that gets written out. If this bit is set using commands like \"sg_write_same --ndob\" we will crash in target_core_iblock/file's execute_write_same handlers when we go to access the se_cmd->t_data_sg because its NULL.  This patch adds a check for the NDOB bit in the common WRITE SAME code because we don't support it. And, it adds a check for zero SG elements in each handler in case the initiator tries to send a normal WRITE SAME with no data buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37819",
                                "url": "https://ubuntu.com/security/CVE-2025-37819",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()  With ACPI in place, gicv2m_get_fwnode() is registered with the pci subsystem as pci_msi_get_fwnode_cb(), which may get invoked at runtime during a PCI host bridge probe. But, the call back is wrongly marked as __init, causing it to be freed, while being registered with the PCI subsystem and could trigger:   Unable to handle kernel paging request at virtual address ffff8000816c0400   gicv2m_get_fwnode+0x0/0x58 (P)   pci_set_bus_msi_domain+0x74/0x88   pci_register_host_bridge+0x194/0x548  This is easily reproducible on a Juno board with ACPI boot.  Retain the function for later use.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37905",
                                "url": "https://ubuntu.com/security/CVE-2025-37905",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  firmware: arm_scmi: Balance device refcount when destroying devices  Using device_find_child() to lookup the proper SCMI device to destroy causes an unbalance in device refcount, since device_find_child() calls an implicit get_device(): this, in turns, inhibits the call of the provided release methods upon devices destruction.  As a consequence, one of the structures that is not freed properly upon destruction is the internal struct device_private dev->p populated by the drivers subsystem core.  KMemleak detects this situation since loading/unloding some SCMI driver causes related devices to be created/destroyed without calling any device_release method.  unreferenced object 0xffff00000f583800 (size 512):   comm \"insmod\", pid 227, jiffies 4294912190   hex dump (first 32 bytes):     00 00 00 00 ad 4e ad de ff ff ff ff 00 00 00 00  .....N..........     ff ff ff ff ff ff ff ff 60 36 1d 8a 00 80 ff ff  ........`6......   backtrace (crc 114e2eed):     kmemleak_alloc+0xbc/0xd8     __kmalloc_cache_noprof+0x2dc/0x398     device_add+0x954/0x12d0     device_register+0x28/0x40     __scmi_device_create.part.0+0x1bc/0x380     scmi_device_create+0x2d0/0x390     scmi_create_protocol_devices+0x74/0xf8     scmi_device_request_notifier+0x1f8/0x2a8     notifier_call_chain+0x110/0x3b0     blocking_notifier_call_chain+0x70/0xb0     scmi_driver_register+0x350/0x7f0     0xffff80000a3b3038     do_one_initcall+0x12c/0x730     do_init_module+0x1dc/0x640     load_module+0x4b20/0x5b70     init_module_from_file+0xec/0x158  $ ./scripts/faddr2line ./vmlinux device_add+0x954/0x12d0 device_add+0x954/0x12d0: kmalloc_noprof at include/linux/slab.h:901 (inlined by) kzalloc_noprof at include/linux/slab.h:1037 (inlined by) device_private_init at drivers/base/core.c:3510 (inlined by) device_add at drivers/base/core.c:3561  Balance device refcount by issuing a put_device() on devices found via device_find_child().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38541",
                                "url": "https://ubuntu.com/security/CVE-2024-38541",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: of: module: add buffer overflow check in of_modalias() In of_modalias(), if the buffer happens to be too small even for the 1st snprintf() call, the len parameter will become negative and str parameter (if not NULL initially) will point beyond the buffer's end. Add the buffer overflow check after the 1st snprintf() call and fix such check after the strlen() call (accounting for the terminating NUL char).",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37909",
                                "url": "https://ubuntu.com/security/CVE-2025-37909",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: lan743x: Fix memleak issue when GSO enabled  Always map the `skb` to the LS descriptor. Previously skb was mapped to EXT descriptor when the number of fragments is zero with GSO enabled. Mapping the skb to EXT descriptor prevents it from being freed, leading to a memory leak",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37911",
                                "url": "https://ubuntu.com/security/CVE-2025-37911",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bnxt_en: Fix out-of-bound memcpy() during ethtool -w  When retrieving the FW coredump using ethtool, it can sometimes cause memory corruption:  BUG: KFENCE: memory corruption in __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] Corrupted memory at 0x000000008f0f30e8 [ ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ] (in kfence-#45): __bnxt_get_coredump+0x3ef/0x670 [bnxt_en] ethtool_get_dump_data+0xdc/0x1a0 __dev_ethtool+0xa1e/0x1af0 dev_ethtool+0xa8/0x170 dev_ioctl+0x1b5/0x580 sock_do_ioctl+0xab/0xf0 sock_ioctl+0x1ce/0x2e0 __x64_sys_ioctl+0x87/0xc0 do_syscall_64+0x5c/0xf0 entry_SYSCALL_64_after_hwframe+0x78/0x80  ...  This happens when copying the coredump segment list in bnxt_hwrm_dbg_dma_data() with the HWRM_DBG_COREDUMP_LIST FW command. The info->dest_buf buffer is allocated based on the number of coredump segments returned by the FW.  The segment list is then DMA'ed by the FW and the length of the DMA is returned by FW.  The driver then copies this DMA'ed segment list to info->dest_buf.  In some cases, this DMA length may exceed the info->dest_buf length and cause the above BUG condition.  Fix it by capping the copy length to not exceed the length of info->dest_buf.  The extra DMA data contains no useful information.  This code path is shared for the HWRM_DBG_COREDUMP_LIST and the HWRM_DBG_COREDUMP_RETRIEVE FW commands.  The buffering is different for these 2 FW commands.  To simplify the logic, we need to move the line to adjust the buffer length for HWRM_DBG_COREDUMP_RETRIEVE up, so that the new check to cap the copy length will work for both commands.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37912",
                                "url": "https://ubuntu.com/security/CVE-2025-37912",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()  As mentioned in the commit baeb705fd6a7 (\"ice: always check VF VSI pointer values\"), we need to perform a null pointer check on the return value of ice_get_vf_vsi() before using it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37913",
                                "url": "https://ubuntu.com/security/CVE-2025-37913",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: qfq: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of qfq, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  This patch checks whether the class was already added to the agg->active list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37914",
                                "url": "https://ubuntu.com/security/CVE-2025-37914",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: ets: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of ets, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before doing the addition to cater for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37915",
                                "url": "https://ubuntu.com/security/CVE-2025-37915",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: drr: Fix double list add in class with netem as child qdisc  As described in Gerrard's report [1], there are use cases where a netem child qdisc will make the parent qdisc's enqueue callback reentrant. In the case of drr, there won't be a UAF, but the code will add the same classifier to the list twice, which will cause memory corruption.  In addition to checking for qlen being zero, this patch checks whether the class was already added to the active_list (cl_is_active) before adding to the list to cover for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26739",
                                "url": "https://ubuntu.com/security/CVE-2024-26739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: net/sched: act_mirred: don't override retval if we already lost the skb If we're redirecting the skb, and haven't called tcf_mirred_forward(), yet, we need to tell the core to drop the skb by setting the retcode to SHOT. If we have called tcf_mirred_forward(), however, the skb is out of our hands and returning SHOT will lead to UaF. Move the retval override to the error path which actually need it.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21839",
                                "url": "https://ubuntu.com/security/CVE-2025-21839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Load DR6 with guest value only before entering .vcpu_run() loop  Move the conditional loading of hardware DR6 with the guest's DR6 value out of the core .vcpu_run() loop to fix a bug where KVM can load hardware with a stale vcpu->arch.dr6.  When the guest accesses a DR and host userspace isn't debugging the guest, KVM disables DR interception and loads the guest's values into hardware on VM-Enter and saves them on VM-Exit.  This allows the guest to access DRs at will, e.g. so that a sequence of DR accesses to configure a breakpoint only generates one VM-Exit.  For DR0-DR3, the logic/behavior is identical between VMX and SVM, and also identical between KVM_DEBUGREG_BP_ENABLED (userspace debugging the guest) and KVM_DEBUGREG_WONT_EXIT (guest using DRs), and so KVM handles loading DR0-DR3 in common code, _outside_ of the core kvm_x86_ops.vcpu_run() loop.  But for DR6, the guest's value doesn't need to be loaded into hardware for KVM_DEBUGREG_BP_ENABLED, and SVM provides a dedicated VMCB field whereas VMX requires software to manually load the guest value, and so loading the guest's value into DR6 is handled by {svm,vmx}_vcpu_run(), i.e. is done _inside_ the core run loop.  Unfortunately, saving the guest values on VM-Exit is initiated by common x86, again outside of the core run loop.  If the guest modifies DR6 (in hardware, when DR interception is disabled), and then the next VM-Exit is a fastpath VM-Exit, KVM will reload hardware DR6 with vcpu->arch.dr6 and clobber the guest's actual value.  The bug shows up primarily with nested VMX because KVM handles the VMX preemption timer in the fastpath, and the window between hardware DR6 being modified (in guest context) and DR6 being read by guest software is orders of magnitude larger in a nested setup.  E.g. in non-nested, the VMX preemption timer would need to fire precisely between #DB injection and the #DB handler's read of DR6, whereas with a KVM-on-KVM setup, the window where hardware DR6 is \"dirty\" extends all the way from L1 writing DR6 to VMRESUME (in L1).      L1's view:     ==========     <L1 disables DR interception>            CPU 0/KVM-7289    [023] d....  2925.640961: kvm_entry: vcpu 0  A:  L1 Writes DR6            CPU 0/KVM-7289    [023] d....  2925.640963: <hack>: Set DRs, DR6 = 0xffff0ff1   B:        CPU 0/KVM-7289    [023] d....  2925.640967: kvm_exit: vcpu 0 reason EXTERNAL_INTERRUPT intr_info 0x800000ec   D: L1 reads DR6, arch.dr6 = 0            CPU 0/KVM-7289    [023] d....  2925.640969: <hack>: Sync DRs, DR6 = 0xffff0ff0             CPU 0/KVM-7289    [023] d....  2925.640976: kvm_entry: vcpu 0     L2 reads DR6, L1 disables DR interception            CPU 0/KVM-7289    [023] d....  2925.640980: kvm_exit: vcpu 0 reason DR_ACCESS info1 0x0000000000000216            CPU 0/KVM-7289    [023] d....  2925.640983: kvm_entry: vcpu 0             CPU 0/KVM-7289    [023] d....  2925.640983: <hack>: Set DRs, DR6 = 0xffff0ff0      L2 detects failure            CPU 0/KVM-7289    [023] d....  2925.640987: kvm_exit: vcpu 0 reason HLT     L1 reads DR6 (confirms failure)            CPU 0/KVM-7289    [023] d....  2925.640990: <hack>: Sync DRs, DR6 = 0xffff0ff0      L0's view:     ==========     L2 reads DR6, arch.dr6 = 0           CPU 23/KVM-5046    [001] d....  3410.005610: kvm_exit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit: vcpu 23 reason DR_ACCESS info1 0x0000000000000216      L2 => L1 nested VM-Exit           CPU 23/KVM-5046    [001] .....  3410.005610: kvm_nested_vmexit_inject: reason: DR_ACCESS ext_inf1: 0x0000000000000216            CPU 23/KVM-5046    [001] d....  3410.005610: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_exit: vcpu 23 reason VMREAD           CPU 23/KVM-5046    [001] d....  3410.005611: kvm_entry: vcpu 23           CPU 23/KVM-5046    [001] d....  3410. ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-07 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37923",
                                "url": "https://ubuntu.com/security/CVE-2025-37923",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tracing: Fix oob write in trace_seq_to_buffer()  syzbot reported this bug: ================================================================== BUG: KASAN: slab-out-of-bounds in trace_seq_to_buffer kernel/trace/trace.c:1830 [inline] BUG: KASAN: slab-out-of-bounds in tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822 Write of size 4507 at addr ffff888032b6b000 by task syz.2.320/7260  CPU: 1 UID: 0 PID: 7260 Comm: syz.2.320 Not tainted 6.15.0-rc1-syzkaller-00301-g3bde70a2c827 #0 PREEMPT(full) Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x116/0x1f0 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0xc3/0x670 mm/kasan/report.c:521  kasan_report+0xe0/0x110 mm/kasan/report.c:634  check_region_inline mm/kasan/generic.c:183 [inline]  kasan_check_range+0xef/0x1a0 mm/kasan/generic.c:189  __asan_memcpy+0x3c/0x60 mm/kasan/shadow.c:106  trace_seq_to_buffer kernel/trace/trace.c:1830 [inline]  tracing_splice_read_pipe+0x6be/0xdd0 kernel/trace/trace.c:6822  .... ==================================================================  It has been reported that trace_seq_to_buffer() tries to copy more data than PAGE_SIZE to buf. Therefore, to prevent this, we should use the smaller of trace_seq_used(&iter->seq) and PAGE_SIZE as an argument.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37927",
                                "url": "https://ubuntu.com/security/CVE-2025-37927",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid  There is a string parsing logic error which can lead to an overflow of hid or uid buffers. Comparing ACPIID_LEN against a total string length doesn't take into account the lengths of individual hid and uid buffers so the check is insufficient in some cases. For example if the length of hid string is 4 and the length of the uid string is 260, the length of str will be equal to ACPIID_LEN + 1 but uid string will overflow uid buffer which size is 256.  The same applies to the hid string with length 13 and uid string with length 250.  Check the length of hid and uid strings separately to prevent buffer overflow.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37990",
                                "url": "https://ubuntu.com/security/CVE-2025-37990",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()  The function brcmf_usb_dl_writeimage() calls the function brcmf_usb_dl_cmd() but dose not check its return value. The 'state.state' and the 'state.bytes' are uninitialized if the function brcmf_usb_dl_cmd() fails. It is dangerous to use uninitialized variables in the conditions.  Add error handling for brcmf_usb_dl_cmd() to jump to error handling path if the brcmf_usb_dl_cmd() fails and the 'state.state' and the 'state.bytes' are uninitialized.  Improve the error message to report more detailed error information.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37991",
                                "url": "https://ubuntu.com/security/CVE-2025-37991",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  parisc: Fix double SIGFPE crash  Camm noticed that on parisc a SIGFPE exception will crash an application with a second SIGFPE in the signal handler.  Dave analyzed it, and it happens because glibc uses a double-word floating-point store to atomically update function descriptors. As a result of lazy binding, we hit a floating-point store in fpe_func almost immediately.  When the T bit is set, an assist exception trap occurs when when the co-processor encounters *any* floating-point instruction except for a double store of register %fr0.  The latter cancels all pending traps.  Let's fix this by clearing the Trap (T) bit in the FP status register before returning to the signal handler in userspace.  The issue can be reproduced with this test program:  root@parisc:~# cat fpe.c  static void fpe_func(int sig, siginfo_t *i, void *v) {         sigset_t set;         sigemptyset(&set);         sigaddset(&set, SIGFPE);         sigprocmask(SIG_UNBLOCK, &set, NULL);         printf(\"GOT signal %d with si_code %ld\\n\", sig, i->si_code); }  int main() {         struct sigaction action = {                 .sa_sigaction = fpe_func,                 .sa_flags = SA_RESTART|SA_SIGINFO };         sigaction(SIGFPE, &action, 0);         feenableexcept(FE_OVERFLOW);         return printf(\"%lf\\n\",1.7976931348623158E308*1.7976931348623158E308); }  root@parisc:~# gcc fpe.c -lm root@parisc:~# ./a.out  Floating point exception  root@parisc:~# strace -f ./a.out  execve(\"./a.out\", [\"./a.out\"], 0xf9ac7034 /* 20 vars */) = 0  getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0  ...  rt_sigaction(SIGFPE, {sa_handler=0x1110a, sa_mask=[], sa_flags=SA_RESTART|SA_SIGINFO}, NULL, 8) = 0  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0x1078f} ---  --- SIGFPE {si_signo=SIGFPE, si_code=FPE_FLTOVF, si_addr=0xf8f21237} ---  +++ killed by SIGFPE +++  Floating point exception",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37930",
                                "url": "https://ubuntu.com/security/CVE-2025-37930",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()  Nouveau is mostly designed in a way that it's expected that fences only ever get signaled through nouveau_fence_signal(). However, in at least one other place, nouveau_fence_done(), can signal fences, too. If that happens (race) a signaled fence remains in the pending list for a while, until it gets removed by nouveau_fence_update().  Should nouveau_fence_context_kill() run in the meantime, this would be a bug because the function would attempt to set an error code on an already signaled fence.  Have nouveau_fence_context_kill() check for a fence being signaled.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49989",
                                "url": "https://ubuntu.com/security/CVE-2024-49989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: fix double free issue during amdgpu module unload  Flexible endpoints use DIGs from available inflexible endpoints, so only the encoders of inflexible links need to be freed. Otherwise, a double free issue may occur when unloading the amdgpu module.  [  279.190523] RIP: 0010:__slab_free+0x152/0x2f0 [  279.190577] Call Trace: [  279.190580]  <TASK> [  279.190582]  ? show_regs+0x69/0x80 [  279.190590]  ? die+0x3b/0x90 [  279.190595]  ? do_trap+0xc8/0xe0 [  279.190601]  ? do_error_trap+0x73/0xa0 [  279.190605]  ? __slab_free+0x152/0x2f0 [  279.190609]  ? exc_invalid_op+0x56/0x70 [  279.190616]  ? __slab_free+0x152/0x2f0 [  279.190642]  ? asm_exc_invalid_op+0x1f/0x30 [  279.190648]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191096]  ? __slab_free+0x152/0x2f0 [  279.191102]  ? dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191469]  kfree+0x260/0x2b0 [  279.191474]  dcn10_link_encoder_destroy+0x19/0x30 [amdgpu] [  279.191821]  link_destroy+0xd7/0x130 [amdgpu] [  279.192248]  dc_destruct+0x90/0x270 [amdgpu] [  279.192666]  dc_destroy+0x19/0x40 [amdgpu] [  279.193020]  amdgpu_dm_fini+0x16e/0x200 [amdgpu] [  279.193432]  dm_hw_fini+0x26/0x40 [amdgpu] [  279.193795]  amdgpu_device_fini_hw+0x24c/0x400 [amdgpu] [  279.194108]  amdgpu_driver_unload_kms+0x4f/0x70 [amdgpu] [  279.194436]  amdgpu_pci_remove+0x40/0x80 [amdgpu] [  279.194632]  pci_device_remove+0x3a/0xa0 [  279.194638]  device_remove+0x40/0x70 [  279.194642]  device_release_driver_internal+0x1ad/0x210 [  279.194647]  driver_detach+0x4e/0xa0 [  279.194650]  bus_remove_driver+0x6f/0xf0 [  279.194653]  driver_unregister+0x33/0x60 [  279.194657]  pci_unregister_driver+0x44/0x90 [  279.194662]  amdgpu_exit+0x19/0x1f0 [amdgpu] [  279.194939]  __do_sys_delete_module.isra.0+0x198/0x2f0 [  279.194946]  __x64_sys_delete_module+0x16/0x20 [  279.194950]  do_syscall_64+0x58/0x120 [  279.194954]  entry_SYSCALL_64_after_hwframe+0x6e/0x76 [  279.194980]  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37803",
                                "url": "https://ubuntu.com/security/CVE-2025-37803",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  udmabuf: fix a buf size overflow issue during udmabuf creation  by casting size_limit_mb to u64  when calculate pglimit.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37983",
                                "url": "https://ubuntu.com/security/CVE-2025-37983",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  qibfs: fix _another_ leak  failure to allocate inode => leaked dentry...  this one had been there since the initial merge; to be fair, if we are that far OOM, the odds of failing at that particular allocation are low...",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37881",
                                "url": "https://ubuntu.com/security/CVE-2025-37881",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()  The variable d->name, returned by devm_kasprintf(), could be NULL. A pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37805",
                                "url": "https://ubuntu.com/security/CVE-2025-37805",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sound/virtio: Fix cancel_sync warnings on uninitialized work_structs  Betty reported hitting the following warning:  [    8.709131][  T221] WARNING: CPU: 2 PID: 221 at kernel/workqueue.c:4182 ... [    8.713282][  T221] Call trace: [    8.713365][  T221]  __flush_work+0x8d0/0x914 [    8.713468][  T221]  __cancel_work_sync+0xac/0xfc [    8.713570][  T221]  cancel_work_sync+0x24/0x34 [    8.713667][  T221]  virtsnd_remove+0xa8/0xf8 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.713868][  T221]  virtsnd_probe+0x48c/0x664 [virtio_snd ab15f34d0dd772f6d11327e08a81d46dc9c36276] [    8.714035][  T221]  virtio_dev_probe+0x28c/0x390 [    8.714139][  T221]  really_probe+0x1bc/0x4c8 ...  It seems we're hitting the error path in virtsnd_probe(), which triggers a virtsnd_remove() which iterates over the substreams calling cancel_work_sync() on the elapsed_period work_struct.  Looking at the code, from earlier in: virtsnd_probe()->virtsnd_build_devs()->virtsnd_pcm_parse_cfg()  We set snd->nsubstreams, allocate the snd->substreams, and if we then hit an error on the info allocation or something in virtsnd_ctl_query_info() fails, we will exit without having initialized the elapsed_period work_struct.  When that error path unwinds we then call virtsnd_remove() which as long as the substreams array is allocated, will iterate through calling cancel_work_sync() on the uninitialized work struct hitting this warning.  Takashi Iwai suggested this fix, which initializes the substreams structure right after allocation, so that if we hit the error paths we avoid trying to cleanup uninitialized data.  Note: I have not yet managed to reproduce the issue myself, so this patch has had limited testing.  Feedback or thoughts would be appreciated!",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37883",
                                "url": "https://ubuntu.com/security/CVE-2025-37883",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  s390/sclp: Add check for get_zeroed_page()  Add check for the return value of get_zeroed_page() in sclp_console_init() to prevent null pointer dereference. Furthermore, to solve the memory leak caused by the loop allocation, add a free helper to do the free job.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37808",
                                "url": "https://ubuntu.com/security/CVE-2025-37808",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  crypto: null - Use spin lock instead of mutex  As the null algorithm may be freed in softirq context through af_alg, use spin locks instead of mutexes to protect the default null algorithm.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37985",
                                "url": "https://ubuntu.com/security/CVE-2025-37985",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  USB: wdm: close race between wdm_open and wdm_wwan_port_stop  Clearing WDM_WWAN_IN_USE must be the last action or we can open a chardev whose URBs are still poisoned",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37810",
                                "url": "https://ubuntu.com/security/CVE-2025-37810",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: dwc3: gadget: check that event count does not exceed event buffer length  The event count is read from register DWC3_GEVNTCOUNT. There is a check for the count being zero, but not for exceeding the event buffer length. Check that event count does not exceed event buffer length, avoiding an out-of-bounds access when memcpy'ing the event. Crash log: Unable to handle kernel paging request at virtual address ffffffc0129be000 pc : __memcpy+0x114/0x180 lr : dwc3_check_event_buf+0xec/0x348 x3 : 0000000000000030 x2 : 000000000000dfc4 x1 : ffffffc0129be000 x0 : ffffff87aad60080 Call trace: __memcpy+0x114/0x180 dwc3_interrupt+0x24/0x34",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37811",
                                "url": "https://ubuntu.com/security/CVE-2025-37811",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: chipidea: ci_hdrc_imx: fix usbmisc handling  usbmisc is an optional device property so it is totally valid for the corresponding data->usbmisc_data to have a NULL value.  Check that before dereferencing the pointer.  Found by Linux Verification Center (linuxtesting.org) with Svace static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37812",
                                "url": "https://ubuntu.com/security/CVE-2025-37812",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  usb: cdns3: Fix deadlock when using NCM gadget  The cdns3 driver has the same NCM deadlock as fixed in cdnsp by commit 58f2fcb3a845 (\"usb: cdnsp: Fix deadlock issue during using NCM gadget\").  Under PREEMPT_RT the deadlock can be readily triggered by heavy network traffic, for example using \"iperf --bidir\" over NCM ethernet link.  The deadlock occurs because the threaded interrupt handler gets preempted by a softirq, but both are protected by the same spinlock. Prevent deadlock by disabling softirq during threaded irq handler.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37885",
                                "url": "https://ubuntu.com/security/CVE-2025-37885",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  KVM: x86: Reset IRTE to host control if *new* route isn't postable  Restore an IRTE back to host control (remapped or posted MSI mode) if the *new* GSI route prevents posting the IRQ directly to a vCPU, regardless of the GSI routing type.  Updating the IRTE if and only if the new GSI is an MSI results in KVM leaving an IRTE posting to a vCPU.  The dangling IRTE can result in interrupts being incorrectly delivered to the guest, and in the worst case scenario can result in use-after-free, e.g. if the VM is torn down, but the underlying host IRQ isn't freed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37817",
                                "url": "https://ubuntu.com/security/CVE-2025-37817",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mcb: fix a double free bug in chameleon_parse_gdd()  In chameleon_parse_gdd(), if mcb_device_register() fails, 'mdev' would be released in mcb_device_register() via put_device(). Thus, goto 'err' label and free 'mdev' again causes a double free. Just return if mcb_device_register() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37823",
                                "url": "https://ubuntu.com/security/CVE-2025-37823",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too  Similarly to the previous patch, we need to safe guard hfsc_dequeue() too. But for this one, we don't have a reliable reproducer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37797",
                                "url": "https://ubuntu.com/security/CVE-2025-37797",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class handling  This patch fixes a Use-After-Free vulnerability in the HFSC qdisc class handling. The issue occurs due to a time-of-check/time-of-use condition in hfsc_change_class() when working with certain child qdiscs like netem or codel.  The vulnerability works as follows: 1. hfsc_change_class() checks if a class has packets (q.qlen != 0) 2. It then calls qdisc_peek_len(), which for certain qdiscs (e.g.,    codel, netem) might drop packets and empty the queue 3. The code continues assuming the queue is still non-empty, adding    the class to vttree 4. This breaks HFSC scheduler assumptions that only non-empty classes    are in vttree 5. Later, when the class is destroyed, this can lead to a Use-After-Free  The fix adds a second queue length check after qdisc_peek_len() to verify the queue wasn't emptied.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37824",
                                "url": "https://ubuntu.com/security/CVE-2025-37824",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix NULL pointer dereference in tipc_mon_reinit_self()  syzbot reported:  tipc: Node number set to 1055423674 Oops: general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 3 UID: 0 PID: 6017 Comm: kworker/3:5 Not tainted 6.15.0-rc1-syzkaller-00246-g900241a5cc15 #0 PREEMPT(full) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Workqueue: events tipc_net_finalize_work RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace:  <TASK>  tipc_net_finalize+0x10b/0x180 net/tipc/net.c:140  process_one_work+0x9cc/0x1b70 kernel/workqueue.c:3238  process_scheduled_works kernel/workqueue.c:3319 [inline]  worker_thread+0x6c8/0xf10 kernel/workqueue.c:3400  kthread+0x3c2/0x780 kernel/kthread.c:464  ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:153  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245  </TASK> ... RIP: 0010:tipc_mon_reinit_self+0x11c/0x210 net/tipc/monitor.c:719 ... RSP: 0018:ffffc9000356fb68 EFLAGS: 00010246 RAX: 0000000000000000 RBX: 0000000000000000 RCX: 000000003ee87cba RDX: 0000000000000000 RSI: ffffffff8dbc56a7 RDI: ffff88804c2cc010 RBP: dffffc0000000000 R08: 0000000000000001 R09: 0000000000000000 R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000007 R13: fffffbfff2111097 R14: ffff88804ead8000 R15: ffff88804ead9010 FS:  0000000000000000(0000) GS:ffff888097ab9000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000f720eb00 CR3: 000000000e182000 CR4: 0000000000352ef0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  There is a racing condition between workqueue created when enabling bearer and another thread created when disabling bearer right after that as follow:  enabling_bearer                          | disabling_bearer ---------------                          | ---------------- tipc_disc_timeout()                      | {                                        | bearer_disable()  ...                                     | {  schedule_work(&tn->work);               |  tipc_mon_delete()  ...                                     |  { }                                        |   ...                                          |   write_lock_bh(&mon->lock);                                          |   mon->self = NULL;                                          |   write_unlock_bh(&mon->lock);                                          |   ...                                          |  } tipc_net_finalize_work()                 | } {                                        |  ...                                     |  tipc_net_finalize()                     |  {                                       |   ...                                    |   tipc_mon_reinit_self()                 |   {                                      |    ...                                   |    write_lock_bh(&mon->lock);            |    mon->self->addr = tipc_own_addr(net); |    write_unlock_bh(&mon->lock);          |    ...             ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37989",
                                "url": "https://ubuntu.com/security/CVE-2025-37989",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: phy: leds: fix memory leak  A network restart test on a router led to an out-of-memory condition, which was traced to a memory leak in the PHY LED trigger code.  The root cause is misuse of the devm API. The registration function (phy_led_triggers_register) is called from phy_attach_direct, not phy_probe, and the unregister function (phy_led_triggers_unregister) is called from phy_detach, not phy_remove. This means the register and unregister functions can be called multiple times for the same PHY device, but devm-allocated memory is not freed until the driver is unbound.  This also prevents kmemleak from detecting the leak, as the devm API internally stores the allocated pointer.  Fix this by replacing devm_kzalloc/devm_kcalloc with standard kzalloc/kcalloc, and add the corresponding kfree calls in the unregister path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37829",
                                "url": "https://ubuntu.com/security/CVE-2025-37829",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scpi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37830",
                                "url": "https://ubuntu.com/security/CVE-2025-37830",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()  cpufreq_cpu_get_raw() can return NULL when the target CPU is not present in the policy->cpus mask. scmi_cpufreq_get_rate() does not check for this case, which results in a NULL pointer dereference.  Add NULL check after cpufreq_cpu_get_raw() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-08 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37836",
                                "url": "https://ubuntu.com/security/CVE-2025-37836",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: Fix reference leak in pci_register_host_bridge()  If device_register() fails, call put_device() to give up the reference to avoid a memory leak, per the comment at device_register().  Found by code review.  [bhelgaas: squash Dan Carpenter's double free fix from https://lore.kernel.org/r/db806a6c-a91b-4e5a-a84b-6b7e01bdac85@stanley.mountain]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37844",
                                "url": "https://ubuntu.com/security/CVE-2025-37844",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cifs: avoid NULL pointer dereference in dbg call  cifs_server_dbg() implies server to be non-NULL so move call under condition to avoid NULL pointer dereference.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23144",
                                "url": "https://ubuntu.com/security/CVE-2025-23144",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()  Lockdep detects the following issue on led-backlight removal:   [  142.315935] ------------[ cut here ]------------   [  142.315954] WARNING: CPU: 2 PID: 292 at drivers/leds/led-core.c:455 led_sysfs_enable+0x54/0x80   ...   [  142.500725] Call trace:   [  142.503176]  led_sysfs_enable+0x54/0x80 (P)   [  142.507370]  led_bl_remove+0x80/0xa8 [led_bl]   [  142.511742]  platform_remove+0x30/0x58   [  142.515501]  device_remove+0x54/0x90   ...  Indeed, led_sysfs_enable() has to be called with the led_access lock held.  Hold the lock when calling led_sysfs_disable().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23148",
                                "url": "https://ubuntu.com/security/CVE-2025-23148",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  soc: samsung: exynos-chipid: Add NULL pointer check in exynos_chipid_probe()  soc_dev_attr->revision could be NULL, thus, a pointer check is added to prevent potential NULL pointer dereference. This is similar to the fix in commit 3027e7b15b02 (\"ice: Fix some null pointer dereference issues in ice_ptp.c\").  This issue is found by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-22027",
                                "url": "https://ubuntu.com/security/CVE-2025-22027",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: streamzap: fix race between device disconnection and urb callback  Syzkaller has reported a general protection fault at function ir_raw_event_store_with_filter(). This crash is caused by a NULL pointer dereference of dev->raw pointer, even though it is checked for NULL in the same function, which means there is a race condition. It occurs due to the incorrect order of actions in the streamzap_disconnect() function: rc_unregister_device() is called before usb_kill_urb(). The dev->raw pointer is freed and set to NULL in rc_unregister_device(), and only after that usb_kill_urb() waits for in-progress requests to finish.  If rc_unregister_device() is called while streamzap_callback() handler is not finished, this can lead to accessing freed resources. Thus rc_unregister_device() should be called after usb_kill_urb().  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-16 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50125",
                                "url": "https://ubuntu.com/security/CVE-2024-50125",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: SCO: Fix UAF on sco_sock_timeout  conn->sk maybe have been unlinked/freed while waiting for sco_conn_lock so this checks if the conn->sk is still valid by checking if it part of sco_sk_list.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-05 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-49535",
                                "url": "https://ubuntu.com/security/CVE-2022-49535",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI and PLOGI  If lpfc_issue_els_flogi() fails and returns non-zero status, the node reference count is decremented to trigger the release of the nodelist structure. However, if there is a prior registration or dev-loss-evt work pending, the node may be released prematurely.  When dev-loss-evt completes, the released node is referenced causing a use-after-free null pointer dereference.  Similarly, when processing non-zero ELS PLOGI completion status in lpfc_cmpl_els_plogi(), the ndlp flags are checked for a transport registration before triggering node removal.  If dev-loss-evt work is pending, the node may be released prematurely and a subsequent call to lpfc_dev_loss_tmo_handler() results in a use after free ndlp dereference.  Add test for pending dev-loss before decrementing the node reference count for FLOGI, PLOGI, PRLI, and ADISC handling.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-26 07:01:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35943",
                                "url": "https://ubuntu.com/security/CVE-2024-35943",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: pmdomain: ti: Add a null pointer check to the omap_prm_domain_init devm_kasprintf() returns a pointer to dynamically allocated memory which can be NULL upon failure. Ensure the allocation was successful by checking the pointer validity.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-26686",
                                "url": "https://ubuntu.com/security/CVE-2024-26686",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: fs/proc: do_task_stat: use sig->stats_lock to gather the threads/children stats lock_task_sighand() can trigger a hard lockup. If NR_CPUS threads call do_task_stat() at the same time and the process has NR_THREADS, it will spin with irqs disabled O(NR_CPUS * NR_THREADS) time. Change do_task_stat() to use sig->stats_lock to gather the statistics outside of ->siglock protected section, in the likely case this code will run lockless.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-04-03 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2022-48893",
                                "url": "https://ubuntu.com/security/CVE-2022-48893",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/gt: Cleanup partial engine discovery failures  If we abort driver initialisation in the middle of gt/engine discovery, some engines will be fully setup and some not. Those incompletely setup engines only have 'engine->release == NULL' and so will leak any of the common objects allocated.  v2:  - Drop the destroy_pinned_context() helper for now.  It's not really    worth it with just a single callsite at the moment.  (Janusz)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-21 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50280",
                                "url": "https://ubuntu.com/security/CVE-2024-50280",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  dm cache: fix flushing uninitialized delayed_work on cache_ctr error  An unexpected WARN_ON from flush_work() may occur when cache creation fails, caused by destroying the uninitialized delayed_work waker in the error path of cache_create(). For example, the warning appears on the superblock checksum error.  Reproduce steps:  dmsetup create cmeta --table \"0 8192 linear /dev/sdc 0\" dmsetup create cdata --table \"0 65536 linear /dev/sdc 8192\" dmsetup create corig --table \"0 524288 linear /dev/sdc 262144\" dd if=/dev/urandom of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table \"0 524288 cache /dev/mapper/cmeta \\ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0\"  Kernel logs:  (snip) WARNING: CPU: 0 PID: 84 at kernel/workqueue.c:4178 __flush_work+0x5d4/0x890  Fix by pulling out the cancel_delayed_work_sync() from the constructor's error path. This patch doesn't affect the use-after-free fix for concurrent dm_resume and dm_destroy (commit 6a459d8edbdb (\"dm cache: Fix UAF in destroy()\")) as cache_dtr is not changed.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-54458",
                                "url": "https://ubuntu.com/security/CVE-2024-54458",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: ufs: bsg: Set bsg_queue to NULL after removal  Currently, this does not cause any issues, but I believe it is necessary to set bsg_queue to NULL after removing it to prevent potential use-after-free (UAF) access.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-02-27 03:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-42322",
                                "url": "https://ubuntu.com/security/CVE-2024-42322",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipvs: properly dereference pe in ip_vs_add_service  Use pe directly to resolve sparse warning:    net/netfilter/ipvs/ip_vs_ctl.c:1471:27: warning: dereference of noderef expression",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-08-17 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-49960",
                                "url": "https://ubuntu.com/security/CVE-2024-49960",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix timer use-after-free on failed mount  Syzbot has found an ODEBUG bug in ext4_fill_super  The del_timer_sync function cancels the s_err_report timer, which reminds about filesystem errors daily. We should guarantee the timer is no longer active before kfree(sbi).  When filesystem mounting fails, the flow goes to failed_mount3, where an error occurs when ext4_stop_mmpd is called, causing a read I/O failure. This triggers the ext4_handle_error function that ultimately re-arms the timer, leaving the s_err_report timer active before kfree(sbi) is called.  Fix the issue by canceling the s_err_report timer after calling ext4_stop_mmpd.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-10-21 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-36908",
                                "url": "https://ubuntu.com/security/CVE-2024-36908",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: blk-iocost: do not WARN if iocg was already offlined In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time: WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0 The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns. Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-30 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-21853",
                                "url": "https://ubuntu.com/security/CVE-2025-21853",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bpf: avoid holding freeze_mutex during mmap operation  We use map->freeze_mutex to prevent races between map_freeze() and memory mapping BPF map contents with writable permissions. The way we naively do this means we'll hold freeze_mutex for entire duration of all the mm and VMA manipulations, which is completely unnecessary. This can potentially also lead to deadlocks, as reported by syzbot in [0].  So, instead, hold freeze_mutex only during writeability checks, bump (proactively) \"write active\" count for the map, unlock the mutex and proceed with mmap logic. And only if something went wrong during mmap logic, then undo that \"write active\" counter increment.    [0] https://lore.kernel.org/bpf/678dcbc9.050a0220.303755.0066.GAE@google.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-12 10:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53128",
                                "url": "https://ubuntu.com/security/CVE-2024-53128",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers  When CONFIG_KASAN_SW_TAGS and CONFIG_KASAN_STACK are enabled, the object_is_on_stack() function may produce incorrect results due to the presence of tags in the obj pointer, while the stack pointer does not have tags.  This discrepancy can lead to incorrect stack object detection and subsequently trigger warnings if CONFIG_DEBUG_OBJECTS is also enabled.  Example of the warning:  ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at lib/debugobjects.c:557 __debug_object_init+0x330/0x364 Modules linked in: CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.12.0-rc5 #4 Hardware name: linux,dummy-virt (DT) pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : __debug_object_init+0x330/0x364 lr : __debug_object_init+0x330/0x364 sp : ffff800082ea7b40 x29: ffff800082ea7b40 x28: 98ff0000c0164518 x27: 98ff0000c0164534 x26: ffff800082d93ec8 x25: 0000000000000001 x24: 1cff0000c00172a0 x23: 0000000000000000 x22: ffff800082d93ed0 x21: ffff800081a24418 x20: 3eff800082ea7bb0 x19: efff800000000000 x18: 0000000000000000 x17: 00000000000000ff x16: 0000000000000047 x15: 206b63617473206e x14: 0000000000000018 x13: ffff800082ea7780 x12: 0ffff800082ea78e x11: 0ffff800082ea790 x10: 0ffff800082ea79d x9 : 34d77febe173e800 x8 : 34d77febe173e800 x7 : 0000000000000001 x6 : 0000000000000001 x5 : feff800082ea74b8 x4 : ffff800082870a90 x3 : ffff80008018d3c4 x2 : 0000000000000001 x1 : ffff800082858810 x0 : 0000000000000050 Call trace:  __debug_object_init+0x330/0x364  debug_object_init_on_stack+0x30/0x3c  schedule_hrtimeout_range_clock+0xac/0x26c  schedule_hrtimeout+0x1c/0x30  wait_task_inactive+0x1d4/0x25c  kthread_bind_mask+0x28/0x98  init_rescuer+0x1e8/0x280  workqueue_init+0x1a0/0x3cc  kernel_init_freeable+0x118/0x200  kernel_init+0x28/0x1f0  ret_from_fork+0x10/0x20 ---[ end trace 0000000000000000 ]--- ODEBUG: object 3eff800082ea7bb0 is NOT on stack ffff800082ea0000, but annotated. ------------[ cut here ]------------",
                                "cve_priority": "negligible",
                                "cve_public_date": "2024-12-04 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35867",
                                "url": "https://ubuntu.com/security/CVE-2024-35867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_stats_proc_show() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52757",
                                "url": "https://ubuntu.com/security/CVE-2023-52757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential deadlock when releasing mids All release_mid() callers seem to hold a reference of @mid so there is no need to call kref_put(&mid->refcount, __release_mid) under @server->mid_lock spinlock. If they don't, then an use-after-free bug would have occurred anyways. By getting rid of such spinlock also fixes a potential deadlock as shown below CPU 0 CPU 1 ------------------------------------------------------------------ cifs_demultiplex_thread() cifs_debug_data_proc_show() release_mid() spin_lock(&server->mid_lock); spin_lock(&cifs_tcp_ses_lock) spin_lock(&server->mid_lock) __release_mid() smb2_find_smb_tcon() spin_lock(&cifs_tcp_ses_lock) *deadlock*",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-21 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46742",
                                "url": "https://ubuntu.com/security/CVE-2024-46742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb/server: fix potential null-ptr-deref of lease_ctx_info in smb2_open()  null-ptr-deref will occur when (req_op_level == SMB2_OPLOCK_LEVEL_LEASE) and parse_lease_state() return NULL.  Fix this by check if 'lease_ctx_info' is NULL.  Additionally, remove the redundant parentheses in parse_durable_handle_context().",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-52572",
                                "url": "https://ubuntu.com/security/CVE-2023-52572",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: cifs: Fix UAF in cifs_demultiplex_thread() There is a UAF when xfstests on cifs: BUG: KASAN: use-after-free in smb2_is_network_name_deleted+0x27/0x160 Read of size 4 at addr ffff88810103fc08 by task cifsd/923 CPU: 1 PID: 923 Comm: cifsd Not tainted 6.1.0-rc4+ #45 ... Call Trace: <TASK> dump_stack_lvl+0x34/0x44 print_report+0x171/0x472 kasan_report+0xad/0x130 kasan_check_range+0x145/0x1a0 smb2_is_network_name_deleted+0x27/0x160 cifs_demultiplex_thread.cold+0x172/0x5a4 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 </TASK> Allocated by task 923: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 __kasan_slab_alloc+0x54/0x60 kmem_cache_alloc+0x147/0x320 mempool_alloc+0xe1/0x260 cifs_small_buf_get+0x24/0x60 allocate_buffers+0xa1/0x1c0 cifs_demultiplex_thread+0x199/0x10d0 kthread+0x165/0x1a0 ret_from_fork+0x1f/0x30 Freed by task 921: kasan_save_stack+0x1e/0x40 kasan_set_track+0x21/0x30 kasan_save_free_info+0x2a/0x40 ____kasan_slab_free+0x143/0x1b0 kmem_cache_free+0xe3/0x4d0 cifs_small_buf_release+0x29/0x90 SMB2_negotiate+0x8b7/0x1c60 smb2_negotiate+0x51/0x70 cifs_negotiate_protocol+0xf0/0x160 cifs_get_smb_ses+0x5fa/0x13c0 mount_get_conns+0x7a/0x750 cifs_mount+0x103/0xd00 cifs_smb3_do_mount+0x1dd/0xcb0 smb3_get_tree+0x1d5/0x300 vfs_get_tree+0x41/0xf0 path_mount+0x9b3/0xdd0 __x64_sys_mount+0x190/0x1d0 do_syscall_64+0x35/0x80 entry_SYSCALL_64_after_hwframe+0x46/0xb0 The UAF is because: mount(pid: 921) | cifsd(pid: 923) -------------------------------|------------------------------- | cifs_demultiplex_thread SMB2_negotiate | cifs_send_recv | compound_send_recv | smb_send_rqst | wait_for_response | wait_event_state [1] | | standard_receive3 | cifs_handle_standard | handle_mid | mid->resp_buf = buf; [2] | dequeue_mid [3] KILL the process [4] | resp_iov[i].iov_base = buf | free_rsp_buf [5] | | is_network_name_deleted [6] | callback 1. After send request to server, wait the response until mid->mid_state != SUBMITTED; 2. Receive response from server, and set it to mid; 3. Set the mid state to RECEIVED; 4. Kill the process, the mid state already RECEIVED, get 0; 5. Handle and release the negotiate response; 6. UAF. It can be easily reproduce with add some delay in [3] - [6]. Only sync call has the problem since async call's callback is executed in cifsd process. Add an extra state to mark the mid state to READY before wakeup the waitter, then it can get the resp safely.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-03-02 22:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-35866",
                                "url": "https://ubuntu.com/security/CVE-2024-35866",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: smb: client: fix potential UAF in cifs_dump_full_key() Skip sessions that are being teared down (status == SES_EXITING) to avoid UAF.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-19 09:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46816",
                                "url": "https://ubuntu.com/security/CVE-2024-46816",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links  [Why] Coverity report OVERRUN warning. There are only max_links elements within dc->links. link count could up to AMDGPU_DM_MAX_DISPLAY_INDEX 31.  [How] Make sure link count less than max_links.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-27 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46774",
                                "url": "https://ubuntu.com/security/CVE-2024-46774",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()  Smatch warns:    arch/powerpc/kernel/rtas.c:1932 __do_sys_rtas() warn: potential   spectre issue 'args.args' [r] (local cap)  The 'nargs' and 'nret' locals come directly from a user-supplied buffer and are used as indexes into a small stack-based array and as inputs to copy_to_user() after they are subject to bounds checks.  Use array_index_nospec() after the bounds checks to clamp these values for speculative execution.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-38540",
                                "url": "https://ubuntu.com/security/CVE-2024-38540",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq Undefined behavior is triggered when bnxt_qplib_alloc_init_hwq is called with hwq_attr->aux_depth != 0 and hwq_attr->aux_stride == 0. In that case, \"roundup_pow_of_two(hwq_attr->aux_stride)\" gets called. roundup_pow_of_two is documented as undefined for 0. Fix it in the one caller that had this combination. The undefined behavior was detected by UBSAN: UBSAN: shift-out-of-bounds in ./include/linux/log2.h:57:13 shift exponent 64 is too large for 64-bit type 'long unsigned int' CPU: 24 PID: 1075 Comm: (udev-worker) Not tainted 6.9.0-rc6+ #4 Hardware name: Abacus electric, s.r.o. - servis@abacus.cz Super Server/H12SSW-iN, BIOS 2.7 10/25/2023 Call Trace: <TASK> dump_stack_lvl+0x5d/0x80 ubsan_epilogue+0x5/0x30 __ubsan_handle_shift_out_of_bounds.cold+0x61/0xec __roundup_pow_of_two+0x25/0x35 [bnxt_re] bnxt_qplib_alloc_init_hwq+0xa1/0x470 [bnxt_re] bnxt_qplib_create_qp+0x19e/0x840 [bnxt_re] bnxt_re_create_qp+0x9b1/0xcd0 [bnxt_re] ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __kmalloc+0x1b6/0x4f0 ? create_qp.part.0+0x128/0x1c0 [ib_core] ? __pfx_bnxt_re_create_qp+0x10/0x10 [bnxt_re] create_qp.part.0+0x128/0x1c0 [ib_core] ib_create_qp_kernel+0x50/0xd0 [ib_core] create_mad_qp+0x8e/0xe0 [ib_core] ? __pfx_qp_event_handler+0x10/0x10 [ib_core] ib_mad_init_device+0x2be/0x680 [ib_core] add_client_context+0x10d/0x1a0 [ib_core] enable_device_and_get+0xe0/0x1d0 [ib_core] ib_register_device+0x53c/0x630 [ib_core] ? srso_alias_return_thunk+0x5/0xfbef5 bnxt_re_probe+0xbd8/0xe50 [bnxt_re] ? __pfx_bnxt_re_probe+0x10/0x10 [bnxt_re] auxiliary_bus_probe+0x49/0x80 ? driver_sysfs_add+0x57/0xc0 really_probe+0xde/0x340 ? pm_runtime_barrier+0x54/0x90 ? __pfx___driver_attach+0x10/0x10 __driver_probe_device+0x78/0x110 driver_probe_device+0x1f/0xa0 __driver_attach+0xba/0x1c0 bus_for_each_dev+0x8f/0xe0 bus_add_driver+0x146/0x220 driver_register+0x72/0xd0 __auxiliary_driver_register+0x6e/0xd0 ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] bnxt_re_mod_init+0x3e/0xff0 [bnxt_re] ? __pfx_bnxt_re_mod_init+0x10/0x10 [bnxt_re] do_one_initcall+0x5b/0x310 do_init_module+0x90/0x250 init_module_from_file+0x86/0xc0 idempotent_init_module+0x121/0x2b0 __x64_sys_finit_module+0x5e/0xb0 do_syscall_64+0x82/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode_prepare+0x149/0x170 ? srso_alias_return_thunk+0x5/0xfbef5 ? syscall_exit_to_user_mode+0x75/0x230 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_syscall_64+0x8e/0x160 ? srso_alias_return_thunk+0x5/0xfbef5 ? __count_memcg_events+0x69/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 ? count_memcg_events.constprop.0+0x1a/0x30 ? srso_alias_return_thunk+0x5/0xfbef5 ? handle_mm_fault+0x1f0/0x300 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_user_addr_fault+0x34e/0x640 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 entry_SYSCALL_64_after_hwframe+0x76/0x7e RIP: 0033:0x7f4e5132821d Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d e3 db 0c 00 f7 d8 64 89 01 48 RSP: 002b:00007ffca9c906a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000139 RAX: ffffffffffffffda RBX: 0000563ec8a8f130 RCX: 00007f4e5132821d RDX: 0000000000000000 RSI: 00007f4e518fa07d RDI: 000000000000003b RBP: 00007ffca9c90760 R08: 00007f4e513f6b20 R09: 00007ffca9c906f0 R10: 0000563ec8a8faa0 R11: 0000000000000246 R12: 00007f4e518fa07d R13: 0000000000020000 R14: 0000563ec8409e90 R15: 0000563ec8a8fa60 </TASK> ---[ end trace ]---",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-19 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-27402",
                                "url": "https://ubuntu.com/security/CVE-2024-27402",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: phonet/pep: fix racy skb_queue_empty() use The receive queues are protected by their respective spin-lock, not the socket lock. This could lead to skb_peek() unexpectedly returning NULL or a pointer to an already dequeued socket buffer.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-05-17 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50272",
                                "url": "https://ubuntu.com/security/CVE-2024-50272",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  filemap: Fix bounds checking in filemap_read()  If the caller supplies an iocb->ki_pos value that is close to the filesystem upper limit, and an iterator with a count that causes us to overflow that limit, then filemap_read() enters an infinite loop.  This behaviour was discovered when testing xfstests generic/525 with the \"localio\" optimisation for loopback NFS mounts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 02:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50258",
                                "url": "https://ubuntu.com/security/CVE-2024-50258",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: fix crash when config small gso_max_size/gso_ipv4_max_size  Config a small gso_max_size/gso_ipv4_max_size will lead to an underflow in sk_dst_gso_max_size(), which may trigger a BUG_ON crash, because sk->sk_gso_max_size would be much bigger than device limits. Call Trace: tcp_write_xmit     tso_segs = tcp_init_tso_segs(skb, mss_now);         tcp_set_skb_tso_segs             tcp_skb_pcount_set                 // skb->len = 524288, mss_now = 8                 // u16 tso_segs = 524288/8 = 65535 -> 0                 tso_segs = DIV_ROUND_UP(skb->len, mss_now)     BUG_ON(!tso_segs) Add check for the minimum value of gso_max_size and gso_ipv4_max_size.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-09 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-56751",
                                "url": "https://ubuntu.com/security/CVE-2024-56751",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ipv6: release nexthop on device removal  The CI is hitting some aperiodic hangup at device removal time in the pmtu.sh self-test:  unregister_netdevice: waiting for veth_A-R1 to become free. Usage count = 6 ref_tracker: veth_A-R1@ffff888013df15d8 has 1/5 users at \tdst_init+0x84/0x4a0 \tdst_alloc+0x97/0x150 \tip6_dst_alloc+0x23/0x90 \tip6_rt_pcpu_alloc+0x1e6/0x520 \tip6_pol_route+0x56f/0x840 \tfib6_rule_lookup+0x334/0x630 \tip6_route_output_flags+0x259/0x480 \tip6_dst_lookup_tail.constprop.0+0x5c2/0x940 \tip6_dst_lookup_flow+0x88/0x190 \tudp_tunnel6_dst_lookup+0x2a7/0x4c0 \tvxlan_xmit_one+0xbde/0x4a50 [vxlan] \tvxlan_xmit+0x9ad/0xf20 [vxlan] \tdev_hard_start_xmit+0x10e/0x360 \t__dev_queue_xmit+0xf95/0x18c0 \tarp_solicit+0x4a2/0xe00 \tneigh_probe+0xaa/0xf0  While the first suspect is the dst_cache, explicitly tracking the dst owing the last device reference via probes proved such dst is held by the nexthop in the originating fib6_info.  Similar to commit f5b51fe804ec (\"ipv6: route: purge exception on removal\"), we need to explicitly release the originating fib info when disconnecting a to-be-removed device from a live ipv6 dst: move the fib6_info cleanup into ip6_dst_ifdown().  Tested running:  ./pmtu.sh cleanup_ipv6_exception  in a tight loop for more than 400 iterations with no spat, running an unpatched kernel  I observed a splat every ~10 iterations.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-29 12:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23140",
                                "url": "https://ubuntu.com/security/CVE-2025-23140",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  misc: pci_endpoint_test: Avoid issue of interrupts remaining after request_irq error  After devm_request_irq() fails with error in pci_endpoint_test_request_irq(), the pci_endpoint_test_free_irq_vectors() is called assuming that all IRQs have been released.  However, some requested IRQs remain unreleased, so there are still /proc/irq/* entries remaining, and this results in WARN() with the following message:    remove_proc_entry: removing non-empty directory 'irq/30', leaking at least 'pci-endpoint-test.0'   WARNING: CPU: 0 PID: 202 at fs/proc/generic.c:719 remove_proc_entry +0x190/0x19c  To solve this issue, set the number of remaining IRQs to test->num_irqs, and release IRQs in advance by calling pci_endpoint_test_release_irq().  [kwilczynski: commit log]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37765",
                                "url": "https://ubuntu.com/security/CVE-2025-37765",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/nouveau: prime: fix ttm_bo_delayed_delete oops  Fix an oops in ttm_bo_delayed_delete which results from dererencing a dangling pointer:  Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b7b: 0000 [#1] PREEMPT SMP CPU: 4 UID: 0 PID: 1082 Comm: kworker/u65:2 Not tainted 6.14.0-rc4-00267-g505460b44513-dirty #216 Hardware name: LENOVO 82N6/LNVNB161216, BIOS GKCN65WW 01/16/2024 Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:dma_resv_iter_first_unlocked+0x55/0x290 Code: 31 f6 48 c7 c7 00 2b fa aa e8 97 bd 52 ff e8 a2 c1 53 00 5a 85 c0 74 48 e9 88 01 00 00 4c 89 63 20 4d 85 e4 0f 84 30 01 00 00 <41> 8b 44 24 10 c6 43 2c 01 48 89 df 89 43 28 e8 97 fd ff ff 4c 8b RSP: 0018:ffffbf9383473d60 EFLAGS: 00010202 RAX: 0000000000000001 RBX: ffffbf9383473d88 RCX: 0000000000000000 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffffbf9383473d78 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000000 R12: 6b6b6b6b6b6b6b6b R13: ffffa003bbf78580 R14: ffffa003a6728040 R15: 00000000000383cc FS:  0000000000000000(0000) GS:ffffa00991c00000(0000) knlGS:0000000000000000 CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000758348024dd0 CR3: 000000012c259000 CR4: 0000000000f50ef0 PKRU: 55555554 Call Trace:  <TASK>  ? __die_body.cold+0x19/0x26  ? die_addr+0x3d/0x70  ? exc_general_protection+0x159/0x460  ? asm_exc_general_protection+0x27/0x30  ? dma_resv_iter_first_unlocked+0x55/0x290  dma_resv_wait_timeout+0x56/0x100  ttm_bo_delayed_delete+0x69/0xb0 [ttm]  process_one_work+0x217/0x5c0  worker_thread+0x1c8/0x3d0  ? apply_wqattrs_cleanup.part.0+0xc0/0xc0  kthread+0x10b/0x240  ? kthreads_online_cpu+0x140/0x140  ret_from_fork+0x40/0x70  ? kthreads_online_cpu+0x140/0x140  ret_from_fork_asm+0x11/0x20  </TASK>  The cause of this is:  - drm_prime_gem_destroy calls dma_buf_put(dma_buf) which releases the   reference to the shared dma_buf. The reference count is 0, so the   dma_buf is destroyed, which in turn decrements the corresponding   amdgpu_bo reference count to 0, and the amdgpu_bo is destroyed -   calling drm_gem_object_release then dma_resv_fini (which destroys the   reservation object), then finally freeing the amdgpu_bo.  - nouveau_bo obj->bo.base.resv is now a dangling pointer to the memory   formerly allocated to the amdgpu_bo.  - nouveau_gem_object_del calls ttm_bo_put(&nvbo->bo) which calls   ttm_bo_release, which schedules ttm_bo_delayed_delete.  - ttm_bo_delayed_delete runs and dereferences the dangling resv pointer,   resulting in a general protection fault.  Fix this by moving the drm_prime_gem_destroy call from nouveau_gem_object_del to nouveau_bo_del_ttm. This ensures that it will be run after ttm_bo_delayed_delete.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37766",
                                "url": "https://ubuntu.com/security/CVE-2025-37766",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37767",
                                "url": "https://ubuntu.com/security/CVE-2025-37767",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37768",
                                "url": "https://ubuntu.com/security/CVE-2025-37768",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37770",
                                "url": "https://ubuntu.com/security/CVE-2025-37770",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37771",
                                "url": "https://ubuntu.com/security/CVE-2025-37771",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/amd/pm: Prevent division by zero  The user can set any speed value. If speed is greater than UINT_MAX/8, division by zero is possible.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37773",
                                "url": "https://ubuntu.com/security/CVE-2025-37773",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  virtiofs: add filesystem context source name check  In certain scenarios, for example, during fuzz testing, the source name may be NULL, which could lead to a kernel panic. Therefore, an extra check for the source name should be added.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37780",
                                "url": "https://ubuntu.com/security/CVE-2025-37780",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  isofs: Prevent the use of too small fid  syzbot reported a slab-out-of-bounds Read in isofs_fh_to_parent. [1]  The handle_bytes value passed in by the reproducing program is equal to 12. In handle_to_path(), only 12 bytes of memory are allocated for the structure file_handle->f_handle member, which causes an out-of-bounds access when accessing the member parent_block of the structure isofs_fid in isofs, because accessing parent_block requires at least 16 bytes of f_handle. Here, fh_len is used to indirectly confirm that the value of handle_bytes is greater than 3 before accessing parent_block.  [1] BUG: KASAN: slab-out-of-bounds in isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183 Read of size 4 at addr ffff0000cc030d94 by task syz-executor215/6466 CPU: 1 UID: 0 PID: 6466 Comm: syz-executor215 Not tainted 6.14.0-rc7-syzkaller-ga2392f333575 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call trace:  show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C)  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:408 [inline]  print_report+0x198/0x550 mm/kasan/report.c:521  kasan_report+0xd8/0x138 mm/kasan/report.c:634  __asan_report_load4_noabort+0x20/0x2c mm/kasan/report_generic.c:380  isofs_fh_to_parent+0x1b8/0x210 fs/isofs/export.c:183  exportfs_decode_fh_raw+0x2dc/0x608 fs/exportfs/expfs.c:523  do_handle_to_path+0xa0/0x198 fs/fhandle.c:257  handle_to_path fs/fhandle.c:385 [inline]  do_handle_open+0x8cc/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600  Allocated by task 6466:  kasan_save_stack mm/kasan/common.c:47 [inline]  kasan_save_track+0x40/0x78 mm/kasan/common.c:68  kasan_save_alloc_info+0x40/0x50 mm/kasan/generic.c:562  poison_kmalloc_redzone mm/kasan/common.c:377 [inline]  __kasan_kmalloc+0xac/0xc4 mm/kasan/common.c:394  kasan_kmalloc include/linux/kasan.h:260 [inline]  __do_kmalloc_node mm/slub.c:4294 [inline]  __kmalloc_noprof+0x32c/0x54c mm/slub.c:4306  kmalloc_noprof include/linux/slab.h:905 [inline]  handle_to_path fs/fhandle.c:357 [inline]  do_handle_open+0x5a4/0xb8c fs/fhandle.c:403  __do_sys_open_by_handle_at fs/fhandle.c:443 [inline]  __se_sys_open_by_handle_at fs/fhandle.c:434 [inline]  __arm64_sys_open_by_handle_at+0x80/0x94 fs/fhandle.c:434  __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]  invoke_syscall+0x98/0x2b8 arch/arm64/kernel/syscall.c:49  el0_svc_common+0x130/0x23c arch/arm64/kernel/syscall.c:132  do_el0_svc+0x48/0x58 arch/arm64/kernel/syscall.c:151  el0_svc+0x54/0x168 arch/arm64/kernel/entry-common.c:744  el0t_64_sync_handler+0x84/0x108 arch/arm64/kernel/entry-common.c:762  el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37781",
                                "url": "https://ubuntu.com/security/CVE-2025-37781",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i2c: cros-ec-tunnel: defer probe if parent EC is not present  When i2c-cros-ec-tunnel and the EC driver are built-in, the EC parent device will not be found, leading to NULL pointer dereference.  That can also be reproduced by unbinding the controller driver and then loading i2c-cros-ec-tunnel module (or binding the device).  [  271.991245] BUG: kernel NULL pointer dereference, address: 0000000000000058 [  271.998215] #PF: supervisor read access in kernel mode [  272.003351] #PF: error_code(0x0000) - not-present page [  272.008485] PGD 0 P4D 0 [  272.011022] Oops: Oops: 0000 [#1] SMP NOPTI [  272.015207] CPU: 0 UID: 0 PID: 3859 Comm: insmod Tainted: G S                 6.15.0-rc1-00004-g44722359ed83 #30 PREEMPT(full) 3c7fb39a552e7d949de2ad921a7d6588d3a4fdc5 [  272.030312] Tainted: [S]=CPU_OUT_OF_SPEC [  272.034233] Hardware name: HP Berknip/Berknip, BIOS Google_Berknip.13434.356.0 05/17/2021 [  272.042400] RIP: 0010:ec_i2c_probe+0x2b/0x1c0 [i2c_cros_ec_tunnel] [  272.048577] Code: 1f 44 00 00 41 57 41 56 41 55 41 54 53 48 83 ec 10 65 48 8b 05 06 a0 6c e7 48 89 44 24 08 4c 8d 7f 10 48 8b 47 50 4c 8b 60 78 <49> 83 7c 24 58 00 0f 84 2f 01 00 00 48 89 fb be 30 06 00 00 4c 9 [  272.067317] RSP: 0018:ffffa32082a03940 EFLAGS: 00010282 [  272.072541] RAX: ffff969580b6a810 RBX: ffff969580b68c10 RCX: 0000000000000000 [  272.079672] RDX: 0000000000000000 RSI: 0000000000000282 RDI: ffff969580b68c00 [  272.086804] RBP: 00000000fffffdfb R08: 0000000000000000 R09: 0000000000000000 [  272.093936] R10: 0000000000000000 R11: ffffffffc0600000 R12: 0000000000000000 [  272.101067] R13: ffffffffa666fbb8 R14: ffffffffc05b5528 R15: ffff969580b68c10 [  272.108198] FS:  00007b930906fc40(0000) GS:ffff969603149000(0000) knlGS:0000000000000000 [  272.116282] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [  272.122024] CR2: 0000000000000058 CR3: 000000012631c000 CR4: 00000000003506f0 [  272.129155] Call Trace: [  272.131606]  <TASK> [  272.133709]  ? acpi_dev_pm_attach+0xdd/0x110 [  272.137985]  platform_probe+0x69/0xa0 [  272.141652]  really_probe+0x152/0x310 [  272.145318]  __driver_probe_device+0x77/0x110 [  272.149678]  driver_probe_device+0x1e/0x190 [  272.153864]  __driver_attach+0x10b/0x1e0 [  272.157790]  ? driver_attach+0x20/0x20 [  272.161542]  bus_for_each_dev+0x107/0x150 [  272.165553]  bus_add_driver+0x15d/0x270 [  272.169392]  driver_register+0x65/0x110 [  272.173232]  ? cleanup_module+0xa80/0xa80 [i2c_cros_ec_tunnel 3a00532f3f4af4a9eade753f86b0f8dd4e4e5698] [  272.182617]  do_one_initcall+0x110/0x350 [  272.186543]  ? security_kernfs_init_security+0x49/0xd0 [  272.191682]  ? __kernfs_new_node+0x1b9/0x240 [  272.195954]  ? security_kernfs_init_security+0x49/0xd0 [  272.201093]  ? __kernfs_new_node+0x1b9/0x240 [  272.205365]  ? kernfs_link_sibling+0x105/0x130 [  272.209810]  ? kernfs_next_descendant_post+0x1c/0xa0 [  272.214773]  ? kernfs_activate+0x57/0x70 [  272.218699]  ? kernfs_add_one+0x118/0x160 [  272.222710]  ? __kernfs_create_file+0x71/0xa0 [  272.227069]  ? sysfs_add_bin_file_mode_ns+0xd6/0x110 [  272.232033]  ? internal_create_group+0x453/0x4a0 [  272.236651]  ? __vunmap_range_noflush+0x214/0x2d0 [  272.241355]  ? __free_frozen_pages+0x1dc/0x420 [  272.245799]  ? free_vmap_area_noflush+0x10a/0x1c0 [  272.250505]  ? load_module+0x1509/0x16f0 [  272.254431]  do_init_module+0x60/0x230 [  272.258181]  __se_sys_finit_module+0x27a/0x370 [  272.262627]  do_syscall_64+0x6a/0xf0 [  272.266206]  ? do_syscall_64+0x76/0xf0 [  272.269956]  ? irqentry_exit_to_user_mode+0x79/0x90 [  272.274836]  entry_SYSCALL_64_after_hwframe+0x55/0x5d [  272.279887] RIP: 0033:0x7b9309168d39 [  272.283466] Code: 5b 41 5c 5d c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d af 40 0c 00 f7 d8 64 89 01 8 [  272.302210] RSP: 002b:00007fff50f1a288 EFLAGS: 00000246 ORIG_RAX: 000 ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37782",
                                "url": "https://ubuntu.com/security/CVE-2025-37782",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority.",
                                "cve_priority": "negligible",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-0927",
                                "url": "https://ubuntu.com/security/CVE-2025-0927",
                                "cve_description": "Rejected reason: This CVE ID has been rejected or withdrawn by its CVE Numbering Authority. Filesystem bugs due to corrupt images are not considered a CVE for any filesystem that is only mountable by CAP_SYS_ADMIN in the initial user namespace. That includes delegated mounting.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-03-23 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37871",
                                "url": "https://ubuntu.com/security/CVE-2025-37871",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  nfsd: decrease sc_count directly if fail to queue dl_recall  A deadlock warning occurred when invoking nfs4_put_stid following a failed dl_recall queue operation:             T1                            T2                                 nfs4_laundromat                                  nfs4_get_client_reaplist                                   nfs4_anylock_blockers __break_lease  spin_lock // ctx->flc_lock                                    spin_lock // clp->cl_lock                                    nfs4_lockowner_has_blockers                                     locks_owner_has_blockers                                      spin_lock // flctx->flc_lock  nfsd_break_deleg_cb   nfsd_break_one_deleg    nfs4_put_stid     refcount_dec_and_lock      spin_lock // clp->cl_lock  When a file is opened, an nfs4_delegation is allocated with sc_count initialized to 1, and the file_lease holds a reference to the delegation. The file_lease is then associated with the file through kernel_setlease.  The disassociation is performed in nfsd4_delegreturn via the following call chain: nfsd4_delegreturn --> destroy_delegation --> destroy_unhashed_deleg --> nfs4_unlock_deleg_lease --> kernel_setlease --> generic_delete_lease The corresponding sc_count reference will be released after this disassociation.  Since nfsd_break_one_deleg executes while holding the flc_lock, the disassociation process becomes blocked when attempting to acquire flc_lock in generic_delete_lease. This means: 1) sc_count in nfsd_break_one_deleg will not be decremented to 0; 2) The nfs4_put_stid called by nfsd_break_one_deleg will not attempt to acquire cl_lock; 3) Consequently, no deadlock condition is created.  Given that sc_count in nfsd_break_one_deleg remains non-zero, we can safely perform refcount_dec on sc_count directly. This approach effectively avoids triggering deadlock warnings.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37787",
                                "url": "https://ubuntu.com/security/CVE-2025-37787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: dsa: mv88e6xxx: avoid unregistering devlink regions which were never registered  Russell King reports that a system with mv88e6xxx dereferences a NULL pointer when unbinding this driver: https://lore.kernel.org/netdev/Z_lRkMlTJ1KQ0kVX@shell.armlinux.org.uk/  The crash seems to be in devlink_region_destroy(), which is not NULL tolerant but is given a NULL devlink global region pointer.  At least on some chips, some devlink regions are conditionally registered since the blamed commit, see mv88e6xxx_setup_devlink_regions_global():  \t\tif (cond && !cond(chip)) \t\t\tcontinue;  These are MV88E6XXX_REGION_STU and MV88E6XXX_REGION_PVT. If the chip does not have an STU or PVT, it should crash like this.  To fix the issue, avoid unregistering those regions which are NULL, i.e. were skipped at mv88e6xxx_setup_devlink_regions_global() time.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37788",
                                "url": "https://ubuntu.com/security/CVE-2025-37788",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path  In the for loop used to allocate the loc_array and bmap for each port, a memory leak is possible when the allocation for loc_array succeeds, but the allocation for bmap fails. This is because when the control flow goes to the label free_eth_finfo, only the allocations starting from (i-1)th iteration are freed.  Fix that by freeing the loc_array in the bmap allocation error path.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37789",
                                "url": "https://ubuntu.com/security/CVE-2025-37789",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: openvswitch: fix nested key length validation in the set() action  It's not safe to access nla_len(ovs_key) if the data is smaller than the netlink header.  Check that the attribute is OK first.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37790",
                                "url": "https://ubuntu.com/security/CVE-2025-37790",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: mctp: Set SOCK_RCU_FREE  Bind lookup runs under RCU, so ensure that a socket doesn't go away in the middle of a lookup.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37875",
                                "url": "https://ubuntu.com/security/CVE-2025-37875",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  igc: fix PTM cycle trigger logic  Writing to clear the PTM status 'valid' bit while the PTM cycle is triggered results in unreliable PTM operation. To fix this, clear the PTM 'trigger' and status after each PTM transaction.  The issue can be reproduced with the following:  $ sudo phc2sys -R 1000 -O 0 -i tsn0 -m  Note: 1000 Hz (-R 1000) is unrealistically large, but provides a way to quickly reproduce the issue.  PHC2SYS exits with:  \"ioctl PTP_OFFSET_PRECISE: Connection timed out\" when the PTM transaction   fails  This patch also fixes a hang in igc_probe() when loading the igc driver in the kdump kernel on systems supporting PTM.  The igc driver running in the base kernel enables PTM trigger in igc_probe().  Therefore the driver is always in PTM trigger mode, except in brief periods when manually triggering a PTM cycle.  When a crash occurs, the NIC is reset while PTM trigger is enabled. Due to a hardware problem, the NIC is subsequently in a bad busmaster state and doesn't handle register reads/writes.  When running igc_probe() in the kdump kernel, the first register access to a NIC register hangs driver probing and ultimately breaks kdump.  With this patch, igc has PTM trigger disabled most of the time, and the trigger is only enabled for very brief (10 - 100 us) periods when manually triggering a PTM cycle.  Chances that a crash occurs during a PTM trigger are not 0, but extremely reduced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37792",
                                "url": "https://ubuntu.com/security/CVE-2025-37792",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  Bluetooth: btrtl: Prevent potential NULL dereference  The btrtl_initialize() function checks that rtl_load_file() either had an error or it loaded a zero length file.  However, if it loaded a zero length file then the error code is not set correctly.  It results in an error pointer vs NULL bug, followed by a NULL pointer dereference.  This was detected by Smatch:  drivers/bluetooth/btrtl.c:592 btrtl_initialize() warn: passing zero to 'ERR_PTR'",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37867",
                                "url": "https://ubuntu.com/security/CVE-2025-37867",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  RDMA/core: Silence oversized kvmalloc() warning  syzkaller triggered an oversized kvmalloc() warning. Silence it by adding __GFP_NOWARN.  syzkaller log:  WARNING: CPU: 7 PID: 518 at mm/util.c:665 __kvmalloc_node_noprof+0x175/0x180  CPU: 7 UID: 0 PID: 518 Comm: c_repro Not tainted 6.11.0-rc6+ #6  Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.13.0-0-gf21b5a4aeb02-prebuilt.qemu.org 04/01/2014  RIP: 0010:__kvmalloc_node_noprof+0x175/0x180  RSP: 0018:ffffc90001e67c10 EFLAGS: 00010246  RAX: 0000000000000100 RBX: 0000000000000400 RCX: ffffffff8149d46b  RDX: 0000000000000000 RSI: ffff8881030fae80 RDI: 0000000000000002  RBP: 000000712c800000 R08: 0000000000000100 R09: 0000000000000000  R10: ffffc90001e67c10 R11: 0030ae0601000000 R12: 0000000000000000  R13: 0000000000000000 R14: 00000000ffffffff R15: 0000000000000000  FS:  00007fde79159740(0000) GS:ffff88813bdc0000(0000) knlGS:0000000000000000  CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033  CR2: 0000000020000180 CR3: 0000000105eb4005 CR4: 00000000003706b0  DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000  DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400  Call Trace:   <TASK>   ib_umem_odp_get+0x1f6/0x390   mlx5_ib_reg_user_mr+0x1e8/0x450   ib_uverbs_reg_mr+0x28b/0x440   ib_uverbs_write+0x7d3/0xa30   vfs_write+0x1ac/0x6c0   ksys_write+0x134/0x170   ? __sanitizer_cov_trace_pc+0x1c/0x50   do_syscall_64+0x50/0x110   entry_SYSCALL_64_after_hwframe+0x76/0x7e",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37982",
                                "url": "https://ubuntu.com/security/CVE-2025-37982",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: wl1251: fix memory leak in wl1251_tx_work  The skb dequeued from tx_queue is lost when wl1251_ps_elp_wakeup fails with a -ETIMEDOUT error. Fix that by queueing the skb back to tx_queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 17:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37794",
                                "url": "https://ubuntu.com/security/CVE-2025-37794",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: mac80211: Purge vif txq in ieee80211_do_stop()  After ieee80211_do_stop() SKB from vif's txq could still be processed. Indeed another concurrent vif schedule_and_wake_txq call could cause those packets to be dequeued (see ieee80211_handle_wake_tx_queue()) without checking the sdata current state.  Because vif.drv_priv is now cleared in this function, this could lead to driver crash.  For example in ath12k, ahvif is store in vif.drv_priv. Thus if ath12k_mac_op_tx() is called after ieee80211_do_stop(), ahvif->ah can be NULL, leading the ath12k_warn(ahvif->ah,...) call in this function to trigger the NULL deref below.    Unable to handle kernel paging request at virtual address dfffffc000000001   KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f]   batman_adv: bat0: Interface deactivated: brbh1337   Mem abort info:     ESR = 0x0000000096000004     EC = 0x25: DABT (current EL), IL = 32 bits     SET = 0, FnV = 0     EA = 0, S1PTW = 0     FSC = 0x04: level 0 translation fault   Data abort info:     ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000     CM = 0, WnR = 0, TnD = 0, TagAccess = 0     GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0   [dfffffc000000001] address between user and kernel address ranges   Internal error: Oops: 0000000096000004 [#1] SMP   CPU: 1 UID: 0 PID: 978 Comm: lbd Not tainted 6.13.0-g633f875b8f1e #114   Hardware name: HW (DT)   pstate: 10000005 (nzcV daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)   pc : ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k]   lr : ath12k_mac_op_tx+0x174/0x29b8 [ath12k]   sp : ffffffc086ace450   x29: ffffffc086ace450 x28: 0000000000000000 x27: 1ffffff810d59ca4   x26: ffffff801d05f7c0 x25: 0000000000000000 x24: 000000004000001e   x23: ffffff8009ce4926 x22: ffffff801f9c0800 x21: ffffff801d05f7f0   x20: ffffff8034a19f40 x19: 0000000000000000 x18: ffffff801f9c0958   x17: ffffff800bc0a504 x16: dfffffc000000000 x15: ffffffc086ace4f8   x14: ffffff801d05f83c x13: 0000000000000000 x12: ffffffb003a0bf03   x11: 0000000000000000 x10: ffffffb003a0bf02 x9 : ffffff8034a19f40   x8 : ffffff801d05f818 x7 : 1ffffff0069433dc x6 : ffffff8034a19ee0   x5 : ffffff801d05f7f0 x4 : 0000000000000000 x3 : 0000000000000001   x2 : 0000000000000000 x1 : dfffffc000000000 x0 : 0000000000000008   Call trace:    ath12k_mac_op_tx+0x6cc/0x29b8 [ath12k] (P)    ieee80211_handle_wake_tx_queue+0x16c/0x260    ieee80211_queue_skb+0xeec/0x1d20    ieee80211_tx+0x200/0x2c8    ieee80211_xmit+0x22c/0x338    __ieee80211_subif_start_xmit+0x7e8/0xc60    ieee80211_subif_start_xmit+0xc4/0xee0    __ieee80211_subif_start_xmit_8023.isra.0+0x854/0x17a0    ieee80211_subif_start_xmit_8023+0x124/0x488    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    br_dev_queue_push_xmit+0x120/0x4a8    __br_forward+0xe4/0x2b0    deliver_clone+0x5c/0xd0    br_flood+0x398/0x580    br_dev_xmit+0x454/0x9f8    dev_hard_start_xmit+0x160/0x5a8    __dev_queue_xmit+0x6f8/0x3120    ip6_finish_output2+0xc28/0x1b60    __ip6_finish_output+0x38c/0x638    ip6_output+0x1b4/0x338    ip6_local_out+0x7c/0xa8    ip6_send_skb+0x7c/0x1b0    ip6_push_pending_frames+0x94/0xd0    rawv6_sendmsg+0x1a98/0x2898    inet_sendmsg+0x94/0xe0    __sys_sendto+0x1e4/0x308    __arm64_sys_sendto+0xc4/0x140    do_el0_svc+0x110/0x280    el0_svc+0x20/0x60    el0t_64_sync_handler+0x104/0x138    el0t_64_sync+0x154/0x158  To avoid that, empty vif's txq at ieee80211_do_stop() so no packet could be dequeued after ieee80211_do_stop() (new packets cannot be queued because SDATA_STATE_RUNNING is cleared at this point).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37796",
                                "url": "https://ubuntu.com/security/CVE-2025-37796",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  wifi: at76c50x: fix use after free access in at76_disconnect  The memory pointed to by priv is freed at the end of at76_delete_device function (using ieee80211_free_hw). But the code then accesses the udev field of the freed object to put the USB device. This may also lead to a memory leak of the usb device. Fix this by using udev from interface.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37838",
                                "url": "https://ubuntu.com/security/CVE-2025-37838",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition  In the ssi_protocol_probe() function, &ssi->work is bound with ssip_xmit_work(), In ssip_pn_setup(), the ssip_pn_xmit() function within the ssip_pn_ops structure is capable of starting the work.  If we remove the module which will call ssi_protocol_remove() to make a cleanup, it will free ssi through kfree(ssi), while the work mentioned above will be used. The sequence of operations that may lead to a UAF bug is as follows:  CPU0                                    CPU1                          | ssip_xmit_work ssi_protocol_remove     | kfree(ssi);             |                         | struct hsi_client *cl = ssi->cl;                         | // use ssi  Fix it by ensuring that the work is canceled before proceeding with the cleanup in ssi_protocol_remove().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-04-18 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37940",
                                "url": "https://ubuntu.com/security/CVE-2025-37940",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ftrace: Add cond_resched() to ftrace_graph_set_hash()  When the kernel contains a large number of functions that can be traced, the loop in ftrace_graph_set_hash() may take a lot of time to execute. This may trigger the softlockup watchdog.  Add cond_resched() within the loop to allow the kernel to remain responsive even when processing a large number of functions.  This matches the cond_resched() that is used in other locations of the code that iterates over all functions that can be traced.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 16:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23142",
                                "url": "https://ubuntu.com/security/CVE-2025-23142",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  sctp: detect and prevent references to a freed transport in sendmsg  sctp_sendmsg() re-uses associations and transports when possible by doing a lookup based on the socket endpoint and the message destination address, and then sctp_sendmsg_to_asoc() sets the selected transport in all the message chunks to be sent.  There's a possible race condition if another thread triggers the removal of that selected transport, for instance, by explicitly unbinding an address with setsockopt(SCTP_SOCKOPT_BINDX_REM), after the chunks have been set up and before the message is sent. This can happen if the send buffer is full, during the period when the sender thread temporarily releases the socket lock in sctp_wait_for_sndbuf().  This causes the access to the transport data in sctp_outq_select_transport(), when the association outqueue is flushed, to result in a use-after-free read.  This change avoids this scenario by having sctp_transport_free() signal the freeing of the transport, tagging it as \"dead\". In order to do this, the patch restores the \"dead\" bit in struct sctp_transport, which was removed in commit 47faa1e4c50e (\"sctp: remove the dead field of sctp_transport\").  Then, in the scenario where the sender thread has released the socket lock in sctp_wait_for_sndbuf(), the bit is checked again after re-acquiring the socket lock to detect the deletion. This is done while holding a reference to the transport to prevent it from being freed in the process.  If the transport was deleted while the socket lock was relinquished, sctp_sendmsg_to_asoc() will return -EAGAIN to let userspace retry the send.  The bug was found by a private syzbot instance (see the error report [1] and the C reproducer that triggers it [2]).",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37892",
                                "url": "https://ubuntu.com/security/CVE-2025-37892",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: inftlcore: Add error check for inftl_read_oob()  In INFTL_findwriteunit(), the return value of inftl_read_oob() need to be checked. A proper implementation can be found in INFTL_deleteblock(). The status will be set as SECTOR_IGNORE to break from the while-loop correctly if the inftl_read_oob() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-20 11:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23145",
                                "url": "https://ubuntu.com/security/CVE-2025-23145",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mptcp: fix NULL pointer in can_accept_new_subflow  When testing valkey benchmark tool with MPTCP, the kernel panics in 'mptcp_can_accept_new_subflow' because subflow_req->msk is NULL.  Call trace:    mptcp_can_accept_new_subflow (./net/mptcp/subflow.c:63 (discriminator 4)) (P)   subflow_syn_recv_sock (./net/mptcp/subflow.c:854)   tcp_check_req (./net/ipv4/tcp_minisocks.c:863)   tcp_v4_rcv (./net/ipv4/tcp_ipv4.c:2268)   ip_protocol_deliver_rcu (./net/ipv4/ip_input.c:207)   ip_local_deliver_finish (./net/ipv4/ip_input.c:234)   ip_local_deliver (./net/ipv4/ip_input.c:254)   ip_rcv_finish (./net/ipv4/ip_input.c:449)   ...  According to the debug log, the same req received two SYN-ACK in a very short time, very likely because the client retransmits the syn ack due to multiple reasons.  Even if the packets are transmitted with a relevant time interval, they can be processed by the server on different CPUs concurrently). The 'subflow_req->msk' ownership is transferred to the subflow the first, and there will be a risk of a null pointer dereference here.  This patch fixes this issue by moving the 'subflow_req->msk' under the `own_req == true` conditional.  Note that the !msk check in subflow_hmac_valid() can be dropped, because the same check already exists under the own_req mpj branch where the code has been moved to.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23146",
                                "url": "https://ubuntu.com/security/CVE-2025-23146",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mfd: ene-kb3930: Fix a potential NULL pointer dereference  The off_gpios could be NULL. Add missing check in the kb3930_probe(). This is similar to the issue fixed in commit b1ba8bcb2d1f (\"backlight: hx8357: Fix potential NULL pointer dereference\").  This was detected by our static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37839",
                                "url": "https://ubuntu.com/security/CVE-2025-37839",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jbd2: remove wrong sb->s_sequence check  Journal emptiness is not determined by sb->s_sequence == 0 but rather by sb->s_start == 0 (which is set a few lines above). Furthermore 0 is a valid transaction ID so the check can spuriously trigger. Remove the invalid WARN_ON.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23147",
                                "url": "https://ubuntu.com/security/CVE-2025-23147",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  i3c: Add NULL pointer check in i3c_master_queue_ibi()  The I3C master driver may receive an IBI from a target device that has not been probed yet. In such cases, the master calls `i3c_master_queue_ibi()` to queue an IBI work task, leading to \"Unable to handle kernel read from unreadable memory\" and resulting in a kernel panic.  Typical IBI handling flow: 1. The I3C master scans target devices and probes their respective drivers. 2. The target device driver calls `i3c_device_request_ibi()` to enable IBI    and assigns `dev->ibi = ibi`. 3. The I3C master receives an IBI from the target device and calls    `i3c_master_queue_ibi()` to queue the target device driver’s IBI    handler task.  However, since target device events are asynchronous to the I3C probe sequence, step 3 may occur before step 2, causing `dev->ibi` to be `NULL`, leading to a kernel panic.  Add a NULL pointer check in `i3c_master_queue_ibi()` to prevent accessing an uninitialized `dev->ibi`, ensuring stability.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23150",
                                "url": "https://ubuntu.com/security/CVE-2025-23150",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: fix off-by-one error in do_split  Syzkaller detected a use-after-free issue in ext4_insert_dentry that was caused by out-of-bounds access due to incorrect splitting in do_split.  BUG: KASAN: use-after-free in ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109 Write of size 251 at addr ffff888074572f14 by task syz-executor335/5847  CPU: 0 UID: 0 PID: 5847 Comm: syz-executor335 Not tainted 6.12.0-rc6-syzkaller-00318-ga9cda7c0ffed #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_address_description mm/kasan/report.c:377 [inline]  print_report+0x169/0x550 mm/kasan/report.c:488  kasan_report+0x143/0x180 mm/kasan/report.c:601  kasan_check_range+0x282/0x290 mm/kasan/generic.c:189  __asan_memcpy+0x40/0x70 mm/kasan/shadow.c:106  ext4_insert_dentry+0x36a/0x6d0 fs/ext4/namei.c:2109  add_dirent_to_buf+0x3d9/0x750 fs/ext4/namei.c:2154  make_indexed_dir+0xf98/0x1600 fs/ext4/namei.c:2351  ext4_add_entry+0x222a/0x25d0 fs/ext4/namei.c:2455  ext4_add_nondir+0x8d/0x290 fs/ext4/namei.c:2796  ext4_symlink+0x920/0xb50 fs/ext4/namei.c:3431  vfs_symlink+0x137/0x2e0 fs/namei.c:4615  do_symlinkat+0x222/0x3a0 fs/namei.c:4641  __do_sys_symlink fs/namei.c:4662 [inline]  __se_sys_symlink fs/namei.c:4660 [inline]  __x64_sys_symlink+0x7a/0x90 fs/namei.c:4660  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f  </TASK>  The following loop is located right above 'if' statement.  for (i = count-1; i >= 0; i--) { \t/* is more than half of this entry in 2nd half of the block? */ \tif (size + map[i].size/2 > blocksize/2) \t\tbreak; \tsize += map[i].size; \tmove++; }  'i' in this case could go down to -1, in which case sum of active entries wouldn't exceed half the block size, but previous behaviour would also do split in half if sum would exceed at the very last block, which in case of having too many long name files in a single block could lead to out-of-bounds access and following use-after-free.  Found by Linux Verification Center (linuxtesting.org) with Syzkaller.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23151",
                                "url": "https://ubuntu.com/security/CVE-2025-23151",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  bus: mhi: host: Fix race between unprepare and queue_buf  A client driver may use mhi_unprepare_from_transfer() to quiesce incoming data during the client driver's tear down. The client driver might also be processing data at the same time, resulting in a call to mhi_queue_buf() which will invoke mhi_gen_tre(). If mhi_gen_tre() runs after mhi_unprepare_from_transfer() has torn down the channel, a panic will occur due to an invalid dereference leading to a page fault.  This occurs because mhi_gen_tre() does not verify the channel state after locking it. Fix this by having mhi_gen_tre() confirm the channel state is valid, or return error to avoid accessing deinitialized data.  [mani: added stable tag]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23156",
                                "url": "https://ubuntu.com/security/CVE-2025-23156",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: refactor hfi packet parsing logic  words_count denotes the number of words in total payload, while data points to payload of various property within it. When words_count reaches last word, data can access memory beyond the total payload. This can lead to OOB access. With this patch, the utility api for handling individual properties now returns the size of data consumed. Accordingly remaining bytes are calculated before parsing the payload, thereby eliminates the OOB access possibilities.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23157",
                                "url": "https://ubuntu.com/security/CVE-2025-23157",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi_parser: add check to avoid out of bound access  There is a possibility that init_codecs is invoked multiple times during manipulated payload from video firmware. In such case, if codecs_count can get incremented to value more than MAX_CODEC_NUM, there can be OOB access. Reset the count so that it always starts from beginning.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37840",
                                "url": "https://ubuntu.com/security/CVE-2025-37840",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mtd: rawnand: brcmnand: fix PM resume warning  Fixed warning on PM resume as shown below caused due to uninitialized struct nand_operation that checks chip select field : WARN_ON(op->cs >= nanddev_ntargets(&chip->base)  [   14.588522] ------------[ cut here ]------------ [   14.588529] WARNING: CPU: 0 PID: 1392 at drivers/mtd/nand/raw/internals.h:139 nand_reset_op+0x1e0/0x1f8 [   14.588553] Modules linked in: bdc udc_core [   14.588579] CPU: 0 UID: 0 PID: 1392 Comm: rtcwake Tainted: G        W         6.14.0-rc4-g5394eea10651 #16 [   14.588590] Tainted: [W]=WARN [   14.588593] Hardware name: Broadcom STB (Flattened Device Tree) [   14.588598] Call trace: [   14.588604]  dump_backtrace from show_stack+0x18/0x1c [   14.588622]  r7:00000009 r6:0000008b r5:60000153 r4:c0fa558c [   14.588625]  show_stack from dump_stack_lvl+0x70/0x7c [   14.588639]  dump_stack_lvl from dump_stack+0x18/0x1c [   14.588653]  r5:c08d40b0 r4:c1003cb0 [   14.588656]  dump_stack from __warn+0x84/0xe4 [   14.588668]  __warn from warn_slowpath_fmt+0x18c/0x194 [   14.588678]  r7:c08d40b0 r6:c1003cb0 r5:00000000 r4:00000000 [   14.588681]  warn_slowpath_fmt from nand_reset_op+0x1e0/0x1f8 [   14.588695]  r8:70c40dff r7:89705f41 r6:36b4a597 r5:c26c9444 r4:c26b0048 [   14.588697]  nand_reset_op from brcmnand_resume+0x13c/0x150 [   14.588714]  r9:00000000 r8:00000000 r7:c24f8010 r6:c228a3f8 r5:c26c94bc r4:c26b0040 [   14.588717]  brcmnand_resume from platform_pm_resume+0x34/0x54 [   14.588735]  r5:00000010 r4:c0840a50 [   14.588738]  platform_pm_resume from dpm_run_callback+0x5c/0x14c [   14.588757]  dpm_run_callback from device_resume+0xc0/0x324 [   14.588776]  r9:c24f8054 r8:c24f80a0 r7:00000000 r6:00000000 r5:00000010 r4:c24f8010 [   14.588779]  device_resume from dpm_resume+0x130/0x160 [   14.588799]  r9:c22539e4 r8:00000010 r7:c22bebb0 r6:c24f8010 r5:c22539dc r4:c22539b0 [   14.588802]  dpm_resume from dpm_resume_end+0x14/0x20 [   14.588822]  r10:c2204e40 r9:00000000 r8:c228a3fc r7:00000000 r6:00000003 r5:c228a414 [   14.588826]  r4:00000010 [   14.588828]  dpm_resume_end from suspend_devices_and_enter+0x274/0x6f8 [   14.588848]  r5:c228a414 r4:00000000 [   14.588851]  suspend_devices_and_enter from pm_suspend+0x228/0x2bc [   14.588868]  r10:c3502910 r9:c3501f40 r8:00000004 r7:c228a438 r6:c0f95e18 r5:00000000 [   14.588871]  r4:00000003 [   14.588874]  pm_suspend from state_store+0x74/0xd0 [   14.588889]  r7:c228a438 r6:c0f934c8 r5:00000003 r4:00000003 [   14.588892]  state_store from kobj_attr_store+0x1c/0x28 [   14.588913]  r9:00000000 r8:00000000 r7:f09f9f08 r6:00000004 r5:c3502900 r4:c0283250 [   14.588916]  kobj_attr_store from sysfs_kf_write+0x40/0x4c [   14.588936]  r5:c3502900 r4:c0d92a48 [   14.588939]  sysfs_kf_write from kernfs_fop_write_iter+0x104/0x1f0 [   14.588956]  r5:c3502900 r4:c3501f40 [   14.588960]  kernfs_fop_write_iter from vfs_write+0x250/0x420 [   14.588980]  r10:c0e14b48 r9:00000000 r8:c25f5780 r7:00443398 r6:f09f9f68 r5:c34f7f00 [   14.588983]  r4:c042a88c [   14.588987]  vfs_write from ksys_write+0x74/0xe4 [   14.589005]  r10:00000004 r9:c25f5780 r8:c02002fA0 r7:00000000 r6:00000000 r5:c34f7f00 [   14.589008]  r4:c34f7f00 [   14.589011]  ksys_write from sys_write+0x10/0x14 [   14.589029]  r7:00000004 r6:004421c0 r5:00443398 r4:00000004 [   14.589032]  sys_write from ret_fast_syscall+0x0/0x5c [   14.589044] Exception stack(0xf09f9fa8 to 0xf09f9ff0) [   14.589050] 9fa0:                   00000004 00443398 00000004 00443398 00000004 00000001 [   14.589056] 9fc0: 00000004 00443398 004421c0 00000004 b6ecbd58 00000008 bebfbc38 0043eb78 [   14.589062] 9fe0: 00440eb0 bebfbaf8 b6de18a0 b6e579e8 [   14.589065] ---[ end trace 0000000000000000 ]---  The fix uses the higher level nand_reset(chip, chipnr); where chipnr = 0, when doing PM resume operation in compliance with the controller support for single die nand chip. Switching from nand_reset_op() to nan ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23158",
                                "url": "https://ubuntu.com/security/CVE-2025-23158",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add check to handle incorrect queue size  qsize represents size of shared queued between driver and video firmware. Firmware can modify this value to an invalid large value. In such situation, empty_space will be bigger than the space actually available. Since new_wr_idx is not checked, so the following code will result in an OOB write. ... qsize = qhdr->q_size  if (wr_idx >= rd_idx)  empty_space = qsize - (wr_idx - rd_idx) .... if (new_wr_idx < qsize) {  memcpy(wr_ptr, packet, dwords << 2) --> OOB write  Add check to ensure qsize is within the allocated size while reading and writing packets into the queue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23159",
                                "url": "https://ubuntu.com/security/CVE-2025-23159",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  media: venus: hfi: add a check to handle OOB in sfr region  sfr->buf_size is in shared memory and can be modified by malicious user. OOB write is possible when the size is made higher than actual sfr data buffer. Cap the size to allocated size for such cases.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37850",
                                "url": "https://ubuntu.com/security/CVE-2025-37850",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()  With CONFIG_COMPILE_TEST && !CONFIG_HAVE_CLK, pwm_mediatek_config() has a divide-by-zero in the following line:  \tdo_div(resolution, clk_get_rate(pc->clk_pwms[pwm->hwpwm]));  due to the fact that the !CONFIG_HAVE_CLK version of clk_get_rate() returns zero.  This is presumably just a theoretical problem: COMPILE_TEST overrides the dependency on RALINK which would select COMMON_CLK.  Regardless it's a good idea to check for the error explicitly to avoid divide-by-zero.  Fixes the following warning:    drivers/pwm/pwm-mediatek.o: warning: objtool: .text: unexpected end of section  [ukleinek: s/CONFIG_CLK/CONFIG_HAVE_CLK/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37851",
                                "url": "https://ubuntu.com/security/CVE-2025-37851",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fbdev: omapfb: Add 'plane' value check  Function dispc_ovl_setup is not intended to work with the value OMAP_DSS_WB of the enum parameter plane.  The value of this parameter is initialized in dss_init_overlays and in the current state of the code it cannot take this value so it's not a real problem.  For the purposes of defensive coding it wouldn't be superfluous to check the parameter value, because some functions down the call stack process this value correctly and some not.  For example, in dispc_ovl_setup_global_alpha it may lead to buffer overflow.  Add check for this value.  Found by Linux Verification Center (linuxtesting.org) with SVACE static analysis tool.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23161",
                                "url": "https://ubuntu.com/security/CVE-2025-23161",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type  The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose.  A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock.  Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled.  This was reported as:    BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48   Call Trace:    rt_spin_lock+0x4e/0x130    vmd_pci_read+0x8d/0x100 [vmd]    pci_user_read_config_byte+0x6f/0xe0    pci_read_config+0xfe/0x290    sysfs_kf_bin_read+0x68/0x90  [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-23163",
                                "url": "https://ubuntu.com/security/CVE-2025-23163",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: vlan: don't propagate flags on open  With the device instance lock, there is now a possibility of a deadlock:  [    1.211455] ============================================ [    1.211571] WARNING: possible recursive locking detected [    1.211687] 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 Not tainted [    1.211823] -------------------------------------------- [    1.211936] ip/184 is trying to acquire lock: [    1.212032] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_set_allmulti+0x4e/0xb0 [    1.212207] [    1.212207] but task is already holding lock: [    1.212332] ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.212487] [    1.212487] other info that might help us debug this: [    1.212626]  Possible unsafe locking scenario: [    1.212626] [    1.212751]        CPU0 [    1.212815]        ---- [    1.212871]   lock(&dev->lock); [    1.212944]   lock(&dev->lock); [    1.213016] [    1.213016]  *** DEADLOCK *** [    1.213016] [    1.213143]  May be due to missing lock nesting notation [    1.213143] [    1.213294] 3 locks held by ip/184: [    1.213371]  #0: ffffffff838b53e0 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x1b/0xa0 [    1.213543]  #1: ffffffff84e5fc70 (&net->rtnl_mutex){+.+.}-{4:4}, at: rtnl_nets_lock+0x37/0xa0 [    1.213727]  #2: ffff8881024a4c30 (&dev->lock){+.+.}-{4:4}, at: dev_open+0x50/0xb0 [    1.213895] [    1.213895] stack backtrace: [    1.213991] CPU: 0 UID: 0 PID: 184 Comm: ip Not tainted 6.14.0-rc5-01215-g032756b4ca7a-dirty #5 [    1.213993] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Arch Linux 1.16.3-1-1 04/01/2014 [    1.213994] Call Trace: [    1.213995]  <TASK> [    1.213996]  dump_stack_lvl+0x8e/0xd0 [    1.214000]  print_deadlock_bug+0x28b/0x2a0 [    1.214020]  lock_acquire+0xea/0x2a0 [    1.214027]  __mutex_lock+0xbf/0xd40 [    1.214038]  dev_set_allmulti+0x4e/0xb0 # real_dev->flags & IFF_ALLMULTI [    1.214040]  vlan_dev_open+0xa5/0x170 # ndo_open on vlandev [    1.214042]  __dev_open+0x145/0x270 [    1.214046]  __dev_change_flags+0xb0/0x1e0 [    1.214051]  netif_change_flags+0x22/0x60 # IFF_UP vlandev [    1.214053]  dev_change_flags+0x61/0xb0 # for each device in group from dev->vlan_info [    1.214055]  vlan_device_event+0x766/0x7c0 # on netdevsim0 [    1.214058]  notifier_call_chain+0x78/0x120 [    1.214062]  netif_open+0x6d/0x90 [    1.214064]  dev_open+0x5b/0xb0 # locks netdevsim0 [    1.214066]  bond_enslave+0x64c/0x1230 [    1.214075]  do_set_master+0x175/0x1e0 # on netdevsim0 [    1.214077]  do_setlink+0x516/0x13b0 [    1.214094]  rtnl_newlink+0xaba/0xb80 [    1.214132]  rtnetlink_rcv_msg+0x440/0x490 [    1.214144]  netlink_rcv_skb+0xeb/0x120 [    1.214150]  netlink_unicast+0x1f9/0x320 [    1.214153]  netlink_sendmsg+0x346/0x3f0 [    1.214157]  __sock_sendmsg+0x86/0xb0 [    1.214160]  ____sys_sendmsg+0x1c8/0x220 [    1.214164]  ___sys_sendmsg+0x28f/0x2d0 [    1.214179]  __x64_sys_sendmsg+0xef/0x140 [    1.214184]  do_syscall_64+0xec/0x1d0 [    1.214190]  entry_SYSCALL_64_after_hwframe+0x77/0x7f [    1.214191] RIP: 0033:0x7f2d1b4a7e56  Device setup:       netdevsim0 (down)      ^        ^   bond        netdevsim1.100@netdevsim1 allmulticast=on (down)  When we enslave the lower device (netdevsim0) which has a vlan, we propagate vlan's allmuti/promisc flags during ndo_open. This causes (re)locking on of the real_dev.  Propagate allmulti/promisc on flags change, not on the open. There is a slight semantics change that vlans that are down now propagate the flags, but this seems unlikely to result in the real issues.  Reproducer:    echo 0 1 > /sys/bus/netdevsim/new_device    dev_path=$(ls -d /sys/bus/netdevsim/devices/netdevsim0/net/*)   dev=$(echo $dev_path | rev | cut -d/ -f1 | rev)    ip link set dev $dev name netdevsim0   ip link set dev netdevsim0 up    ip link add link netdevsim0 name netdevsim0.100 type vlan id 100   ip link set dev netdevsim0.100 allm ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37857",
                                "url": "https://ubuntu.com/security/CVE-2025-37857",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  scsi: st: Fix array overflow in st_setup()  Change the array size to follow parms size instead of a fixed value.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37738",
                                "url": "https://ubuntu.com/security/CVE-2025-37738",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ext4: ignore xattrs past end  Once inside 'ext4_xattr_inode_dec_ref_all' we should ignore xattrs entries past the 'end' entry.  This fixes the following KASAN reported issue:  ================================================================== BUG: KASAN: slab-use-after-free in ext4_xattr_inode_dec_ref_all+0xb8c/0xe90 Read of size 4 at addr ffff888012c120c4 by task repro/2065  CPU: 1 UID: 0 PID: 2065 Comm: repro Not tainted 6.13.0-rc2+ #11 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x1fd/0x300  ? tcp_gro_dev_warn+0x260/0x260  ? _printk+0xc0/0x100  ? read_lock_is_recursive+0x10/0x10  ? irq_work_queue+0x72/0xf0  ? __virt_addr_valid+0x17b/0x4b0  print_address_description+0x78/0x390  print_report+0x107/0x1f0  ? __virt_addr_valid+0x17b/0x4b0  ? __virt_addr_valid+0x3ff/0x4b0  ? __phys_addr+0xb5/0x160  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  kasan_report+0xcc/0x100  ? ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ext4_xattr_inode_dec_ref_all+0xb8c/0xe90  ? ext4_xattr_delete_inode+0xd30/0xd30  ? __ext4_journal_ensure_credits+0x5f0/0x5f0  ? __ext4_journal_ensure_credits+0x2b/0x5f0  ? inode_update_timestamps+0x410/0x410  ext4_xattr_delete_inode+0xb64/0xd30  ? ext4_truncate+0xb70/0xdc0  ? ext4_expand_extra_isize_ea+0x1d20/0x1d20  ? __ext4_mark_inode_dirty+0x670/0x670  ? ext4_journal_check_start+0x16f/0x240  ? ext4_inode_is_fast_symlink+0x2f2/0x3a0  ext4_evict_inode+0xc8c/0xff0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  ? do_raw_spin_unlock+0x53/0x8a0  ? ext4_inode_is_fast_symlink+0x3a0/0x3a0  evict+0x4ac/0x950  ? proc_nr_inodes+0x310/0x310  ? trace_ext4_drop_inode+0xa2/0x220  ? _raw_spin_unlock+0x1a/0x30  ? iput+0x4cb/0x7e0  do_unlinkat+0x495/0x7c0  ? try_break_deleg+0x120/0x120  ? 0xffffffff81000000  ? __check_object_size+0x15a/0x210  ? strncpy_from_user+0x13e/0x250  ? getname_flags+0x1dc/0x530  __x64_sys_unlinkat+0xc8/0xf0  do_syscall_64+0x65/0x110  entry_SYSCALL_64_after_hwframe+0x67/0x6f RIP: 0033:0x434ffd Code: 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 8 RSP: 002b:00007ffc50fa7b28 EFLAGS: 00000246 ORIG_RAX: 0000000000000107 RAX: ffffffffffffffda RBX: 00007ffc50fa7e18 RCX: 0000000000434ffd RDX: 0000000000000000 RSI: 0000000020000240 RDI: 0000000000000005 RBP: 00007ffc50fa7be0 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000001 R13: 00007ffc50fa7e08 R14: 00000000004bbf30 R15: 0000000000000001  </TASK>  The buggy address belongs to the object at ffff888012c12000  which belongs to the cache filp of size 360 The buggy address is located 196 bytes inside of  freed 360-byte region [ffff888012c12000, ffff888012c12168)  The buggy address belongs to the physical page: page: refcount:1 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x12c12 head: order:1 mapcount:0 entire_mapcount:0 nr_pages_mapped:0 pincount:0 flags: 0x40(head|node=0|zone=0) page_type: f5(slab) raw: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 raw: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000040 ffff888000ad7640 ffffea0000497a00 dead000000000004 head: 0000000000000000 0000000000100010 00000001f5000000 0000000000000000 head: 0000000000000001 ffffea00004b0481 ffffffffffffffff 0000000000000000 head: 0000000000000002 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected  Memory state around the buggy address:  ffff888012c11f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ffff888012c12000: fa fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb > ffff888012c12080: fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb fb                                            ^  ffff888012c12100: fb fb fb fb fb fb fb fb fb fb fb fb fb fc fc fc  ffff888012c12180: fc fc fc fc fc fc fc fc fc ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37739",
                                "url": "https://ubuntu.com/security/CVE-2025-37739",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()  syzbot reports an UBSAN issue as below:  ------------[ cut here ]------------ UBSAN: array-index-out-of-bounds in fs/f2fs/node.h:381:10 index 18446744073709550692 is out of range for type '__le32[5]' (aka 'unsigned int[5]') CPU: 0 UID: 0 PID: 5318 Comm: syz.0.0 Not tainted 6.14.0-rc3-syzkaller-00060-g6537cfb395f3 #0 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  ubsan_epilogue lib/ubsan.c:231 [inline]  __ubsan_handle_out_of_bounds+0x121/0x150 lib/ubsan.c:429  get_nid fs/f2fs/node.h:381 [inline]  f2fs_truncate_inode_blocks+0xa5e/0xf60 fs/f2fs/node.c:1181  f2fs_do_truncate_blocks+0x782/0x1030 fs/f2fs/file.c:808  f2fs_truncate_blocks+0x10d/0x300 fs/f2fs/file.c:836  f2fs_truncate+0x417/0x720 fs/f2fs/file.c:886  f2fs_file_write_iter+0x1bdb/0x2550 fs/f2fs/file.c:5093  aio_write+0x56b/0x7c0 fs/aio.c:1633  io_submit_one+0x8a7/0x18a0 fs/aio.c:2052  __do_sys_io_submit fs/aio.c:2111 [inline]  __se_sys_io_submit+0x171/0x2e0 fs/aio.c:2081  do_syscall_x64 arch/x86/entry/common.c:52 [inline]  do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83  entry_SYSCALL_64_after_hwframe+0x77/0x7f RIP: 0033:0x7f238798cde9  index 18446744073709550692 (decimal, unsigned long long) = 0xfffffffffffffc64 (hexadecimal, unsigned long long) = -924 (decimal, long long)  In f2fs_truncate_inode_blocks(), UBSAN detects that get_nid() tries to access .i_nid[-924], it means both offset[0] and level should zero.  The possible case should be in f2fs_do_truncate_blocks(), we try to truncate inode size to zero, however, dn.ofs_in_node is zero and dn.node_page is not an inode page, so it fails to truncate inode page, and then pass zeroed free_from to f2fs_truncate_inode_blocks(), result in this issue.  \tif (dn.ofs_in_node || IS_INODE(dn.node_page)) { \t\tf2fs_truncate_data_blocks_range(&dn, count); \t\tfree_from += count; \t}  I guess the reason why dn.node_page is not an inode page could be: there are multiple nat entries share the same node block address, once the node block address was reused, f2fs_get_node_page() may load a non-inode block.  Let's add a sanity check for such condition to avoid out-of-bounds access issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37740",
                                "url": "https://ubuntu.com/security/CVE-2025-37740",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: add sanity check for agwidth in dbMount  The width in dmapctl of the AG is zero, it trigger a divide error when calculating the control page level in dbAllocAG.  To avoid this issue, add a check for agwidth in dbAllocAG.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37741",
                                "url": "https://ubuntu.com/security/CVE-2025-37741",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Prevent copying of nlink with value 0 from disk inode  syzbot report a deadlock in diFree. [1]  When calling \"ioctl$LOOP_SET_STATUS64\", the offset value passed in is 4, which does not match the mounted loop device, causing the mapping of the mounted loop device to be invalidated.  When creating the directory and creating the inode of iag in diReadSpecial(), read the page of fixed disk inode (AIT) in raw mode in read_metapage(), the metapage data it returns is corrupted, which causes the nlink value of 0 to be assigned to the iag inode when executing copy_from_dinode(), which ultimately causes a deadlock when entering diFree().  To avoid this, first check the nlink value of dinode before setting iag inode.  [1] WARNING: possible recursive locking detected 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Not tainted -------------------------------------------- syz-executor301/5309 is trying to acquire lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  but task is already holding lock: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  other info that might help us debug this:  Possible unsafe locking scenario:         CPU0        ----   lock(&(imap->im_aglock[index]));   lock(&(imap->im_aglock[index]));   *** DEADLOCK ***   May be due to missing lock nesting notation  5 locks held by syz-executor301/5309:  #0: ffff8880422a4420 (sb_writers#9){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:515  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:850 [inline]  #1: ffff88804755b390 (&type->i_mutex_dir_key#6/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:4026  #2: ffff888044548920 (&(imap->im_aglock[index])){+.+.}-{3:3}, at: diAlloc+0x1b6/0x1630  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2460 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #3: ffff888044548890 (&imap->im_freelock){+.+.}-{3:3}, at: diAllocAG+0x4b7/0x1e50 fs/jfs/jfs_imap.c:1669  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diNewIAG fs/jfs/jfs_imap.c:2477 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  #4: ffff88804755a618 (&jfs_ip->rdwrlock/1){++++}-{3:3}, at: diAllocAG+0x869/0x1e50 fs/jfs/jfs_imap.c:1669  stack backtrace: CPU: 0 UID: 0 PID: 5309 Comm: syz-executor301 Not tainted 6.12.0-rc7-syzkaller-00212-g4a5df3796467 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2~bpo12+1 04/01/2014 Call Trace:  <TASK>  __dump_stack lib/dump_stack.c:94 [inline]  dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120  print_deadlock_bug+0x483/0x620 kernel/locking/lockdep.c:3037  check_deadlock kernel/locking/lockdep.c:3089 [inline]  validate_chain+0x15e2/0x5920 kernel/locking/lockdep.c:3891  __lock_acquire+0x1384/0x2050 kernel/locking/lockdep.c:5202  lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5825  __mutex_lock_common kernel/locking/mutex.c:608 [inline]  __mutex_lock+0x136/0xd70 kernel/locking/mutex.c:752  diFree+0x37c/0x2fb0 fs/jfs/jfs_imap.c:889  jfs_evict_inode+0x32d/0x440 fs/jfs/inode.c:156  evict+0x4e8/0x9b0 fs/inode.c:725  diFreeSpecial fs/jfs/jfs_imap.c:552 [inline]  duplicateIXtree+0x3c6/0x550 fs/jfs/jfs_imap.c:3022  diNewIAG fs/jfs/jfs_imap.c:2597 [inline]  diAllocExt fs/jfs/jfs_imap.c:1905 [inline]  diAllocAG+0x17dc/0x1e50 fs/jfs/jfs_imap.c:1669  diAlloc+0x1d2/0x1630 fs/jfs/jfs_imap.c:1590  ialloc+0x8f/0x900 fs/jfs/jfs_inode.c:56  jfs_mkdir+0x1c5/0xba0 fs/jfs/namei.c:225  vfs_mkdir+0x2f9/0x4f0 fs/namei.c:4257  do_mkdirat+0x264/0x3a0 fs/namei.c:4280  __do_sys_mkdirat fs/namei.c:4295 [inline]  __se_sys_mkdirat fs/namei.c:4293 [inline]  __x64_sys_mkdirat+0x87/0xa0 fs/namei.c:4293  do_syscall_x64 arch/x86/en ---truncated---",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37858",
                                "url": "https://ubuntu.com/security/CVE-2025-37858",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  fs/jfs: Prevent integer overflow in AG size calculation  The JFS filesystem calculates allocation group (AG) size using 1 << l2agsize in dbExtendFS(). When l2agsize exceeds 31 (possible with >2TB aggregates on 32-bit systems), this 32-bit shift operation causes undefined behavior and improper AG sizing.  On 32-bit architectures: - Left-shifting 1 by 32+ bits results in 0 due to integer overflow - This creates invalid AG sizes (0 or garbage values) in sbi->bmap->db_agsize - Subsequent block allocations would reference invalid AG structures - Could lead to:   - Filesystem corruption during extend operations   - Kernel crashes due to invalid memory accesses   - Security vulnerabilities via malformed on-disk structures  Fix by casting to s64 before shifting: bmp->db_agsize = (s64)1 << l2agsize;  This ensures 64-bit arithmetic even on 32-bit architectures. The cast matches the data type of db_agsize (s64) and follows similar patterns in JFS block calculation code.  Found by Linux Verification Center (linuxtesting.org) with SVACE.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37742",
                                "url": "https://ubuntu.com/security/CVE-2025-37742",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  jfs: Fix uninit-value access of imap allocated in the diMount() function  syzbot reports that hex_dump_to_buffer is using uninit-value:  ===================================================== BUG: KMSAN: uninit-value in hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 hex_dump_to_buffer+0x888/0x1100 lib/hexdump.c:171 print_hex_dump+0x13d/0x3e0 lib/hexdump.c:276 diFree+0x5ba/0x4350 fs/jfs/jfs_imap.c:876 jfs_evict_inode+0x510/0x550 fs/jfs/inode.c:156 evict+0x723/0xd10 fs/inode.c:796 iput_final fs/inode.c:1946 [inline] iput+0x97b/0xdb0 fs/inode.c:1972 txUpdateMap+0xf3e/0x1150 fs/jfs/jfs_txnmgr.c:2367 txLazyCommit fs/jfs/jfs_txnmgr.c:2664 [inline] jfs_lazycommit+0x627/0x11d0 fs/jfs/jfs_txnmgr.c:2733 kthread+0x6b9/0xef0 kernel/kthread.c:464 ret_from_fork+0x6d/0x90 arch/x86/kernel/process.c:148 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244  Uninit was created at: slab_post_alloc_hook mm/slub.c:4121 [inline] slab_alloc_node mm/slub.c:4164 [inline] __kmalloc_cache_noprof+0x8e3/0xdf0 mm/slub.c:4320 kmalloc_noprof include/linux/slab.h:901 [inline] diMount+0x61/0x7f0 fs/jfs/jfs_imap.c:105 jfs_mount+0xa8e/0x11d0 fs/jfs/jfs_mount.c:176 jfs_fill_super+0xa47/0x17c0 fs/jfs/super.c:523 get_tree_bdev_flags+0x6ec/0x910 fs/super.c:1636 get_tree_bdev+0x37/0x50 fs/super.c:1659 jfs_get_tree+0x34/0x40 fs/jfs/super.c:635 vfs_get_tree+0xb1/0x5a0 fs/super.c:1814 do_new_mount+0x71f/0x15e0 fs/namespace.c:3560 path_mount+0x742/0x1f10 fs/namespace.c:3887 do_mount fs/namespace.c:3900 [inline] __do_sys_mount fs/namespace.c:4111 [inline] __se_sys_mount+0x71f/0x800 fs/namespace.c:4088 __x64_sys_mount+0xe4/0x150 fs/namespace.c:4088 x64_sys_call+0x39bf/0x3c30 arch/x86/include/generated/asm/syscalls_64.h:166 do_syscall_x64 arch/x86/entry/common.c:52 [inline] do_syscall_64+0xcd/0x1e0 arch/x86/entry/common.c:83 entry_SYSCALL_64_after_hwframe+0x77/0x7f =====================================================  The reason is that imap is not properly initialized after memory allocation. It will cause the snprintf() function to write uninitialized data into linebuf within hex_dump_to_buffer().  Fix this by using kzalloc instead of kmalloc to clear its content at the beginning in diMount().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37859",
                                "url": "https://ubuntu.com/security/CVE-2025-37859",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  page_pool: avoid infinite loop to schedule delayed worker  We noticed the kworker in page_pool_release_retry() was waken up repeatedly and infinitely in production because of the buggy driver causing the inflight less than 0 and warning us in page_pool_inflight()[1].  Since the inflight value goes negative, it means we should not expect the whole page_pool to get back to work normally.  This patch mitigates the adverse effect by not rescheduling the kworker when detecting the inflight negative in page_pool_release_retry().  [1] [Mon Feb 10 20:36:11 2025] ------------[ cut here ]------------ [Mon Feb 10 20:36:11 2025] Negative(-51446) inflight packet-pages ... [Mon Feb 10 20:36:11 2025] Call Trace: [Mon Feb 10 20:36:11 2025]  page_pool_release_retry+0x23/0x70 [Mon Feb 10 20:36:11 2025]  process_one_work+0x1b1/0x370 [Mon Feb 10 20:36:11 2025]  worker_thread+0x37/0x3a0 [Mon Feb 10 20:36:11 2025]  kthread+0x11a/0x140 [Mon Feb 10 20:36:11 2025]  ? process_one_work+0x370/0x370 [Mon Feb 10 20:36:11 2025]  ? __kthread_cancel_work+0x40/0x40 [Mon Feb 10 20:36:11 2025]  ret_from_fork+0x35/0x40 [Mon Feb 10 20:36:11 2025] ---[ end trace ebffe800f33e7e34 ]--- Note: before this patch, the above calltrace would flood the dmesg due to repeated reschedule of release_dw kworker.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37862",
                                "url": "https://ubuntu.com/security/CVE-2025-37862",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  HID: pidff: Fix null pointer dereference in pidff_find_fields  This function triggered a null pointer dereference if used to search for a report that isn't implemented on the device. This happened both for optional and required reports alike.  The same logic was applied to pidff_find_special_field and although pidff_init_fields should return an error earlier if one of the required reports is missing, future modifications could change this logic and resurface this possible null pointer dereference again.  LKML bug report: https://lore.kernel.org/all/CAL-gK7f5=R0nrrQdPtaZZr1fd-cdAMbDMuZ_NLA8vM0SX+nGSw@mail.gmail.com",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37841",
                                "url": "https://ubuntu.com/security/CVE-2025-37841",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  pm: cpupower: bench: Prevent NULL dereference on malloc failure  If malloc returns NULL due to low memory, 'config' pointer can be NULL. Add a check to prevent NULL dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-09 07:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37749",
                                "url": "https://ubuntu.com/security/CVE-2025-37749",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: ppp: Add bound checking for skb data on ppp_sync_txmung  Ensure we have enough data in linear buffer from skb before accessing initial bytes. This prevents potential out-of-bounds accesses when processing short packets.  When ppp_sync_txmung receives an incoming package with an empty payload: (remote) gef➤  p *(struct pppoe_hdr *) (skb->head + skb->network_header) $18 = { \ttype = 0x1, \tver = 0x1, \tcode = 0x0, \tsid = 0x2,         length = 0x0, \ttag = 0xffff8880371cdb96 }  from the skb struct (trimmed)       tail = 0x16,       end = 0x140,       head = 0xffff88803346f400 \"4\",       data = 0xffff88803346f416 \":\\377\",       truesize = 0x380,       len = 0x0,       data_len = 0x0,       mac_len = 0xe,       hdr_len = 0x0,  it is not safe to access data[2].  [pabeni@redhat.com: fixed subj typo]",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37756",
                                "url": "https://ubuntu.com/security/CVE-2025-37756",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net: tls: explicitly disallow disconnect  syzbot discovered that it can disconnect a TLS socket and then run into all sort of unexpected corner cases. I have a vague recollection of Eric pointing this out to us a long time ago. Supporting disconnect is really hard, for one thing if offload is enabled we'd need to wait for all packets to be _acked_. Disconnect is not commonly used, disallow it.  The immediate problem syzbot run into is the warning in the strp, but that's just the easiest bug to trigger:    WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486   Call Trace:    <TASK>    tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363    tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043    inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678    sock_recvmsg_nosec net/socket.c:1023 [inline]    sock_recvmsg+0x109/0x280 net/socket.c:1045    __sys_recvfrom+0x202/0x380 net/socket.c:2237",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37757",
                                "url": "https://ubuntu.com/security/CVE-2025-37757",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  tipc: fix memory leak in tipc_link_xmit  In case the backlog transmit queue for system-importance messages is overloaded, tipc_link_xmit() returns -ENOBUFS but the skb list is not purged. This leads to memory leak and failure when a skb is allocated.  This commit fixes this issue by purging the skb list before tipc_link_xmit() returns.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37758",
                                "url": "https://ubuntu.com/security/CVE-2025-37758",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()  devm_ioremap() returns NULL on error. Currently, pxa_ata_probe() does not check for this case, which can result in a NULL pointer dereference.  Add NULL check after devm_ioremap() to prevent this issue.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53051",
                                "url": "https://ubuntu.com/security/CVE-2024-53051",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability  Sometimes during hotplug scenario or suspend/resume scenario encoder is not always initialized when intel_hdcp_get_capability add a check to avoid kernel null pointer dereference.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-11-19 18:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-46787",
                                "url": "https://ubuntu.com/security/CVE-2024-46787",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  userfaultfd: fix checks for huge PMDs  Patch series \"userfaultfd: fix races around pmd_trans_huge() check\", v2.  The pmd_trans_huge() code in mfill_atomic() is wrong in three different ways depending on kernel version:  1. The pmd_trans_huge() check is racy and can lead to a BUG_ON() (if you hit    the right two race windows) - I've tested this in a kernel build with    some extra mdelay() calls. See the commit message for a description    of the race scenario.    On older kernels (before 6.5), I think the same bug can even    theoretically lead to accessing transhuge page contents as a page table    if you hit the right 5 narrow race windows (I haven't tested this case). 2. As pointed out by Qi Zheng, pmd_trans_huge() is not sufficient for    detecting PMDs that don't point to page tables.    On older kernels (before 6.5), you'd just have to win a single fairly    wide race to hit this.    I've tested this on 6.1 stable by racing migration (with a mdelay()    patched into try_to_migrate()) against UFFDIO_ZEROPAGE - on my x86    VM, that causes a kernel oops in ptlock_ptr(). 3. On newer kernels (>=6.5), for shmem mappings, khugepaged is allowed    to yank page tables out from under us (though I haven't tested that),    so I think the BUG_ON() checks in mfill_atomic() are just wrong.  I decided to write two separate fixes for these (one fix for bugs 1+2, one fix for bug 3), so that the first fix can be backported to kernels affected by bugs 1+2.   This patch (of 2):  This fixes two issues.  I discovered that the following race can occur:    mfill_atomic                other thread   ============                ============                               <zap PMD>   pmdp_get_lockless() [reads none pmd]   <bail if trans_huge>   <if none:>                               <pagefault creates transhuge zeropage>     __pte_alloc [no-op]                               <zap PMD>   <bail if pmd_trans_huge(*dst_pmd)>   BUG_ON(pmd_none(*dst_pmd))  I have experimentally verified this in a kernel with extra mdelay() calls; the BUG_ON(pmd_none(*dst_pmd)) triggers.  On kernels newer than commit 0d940a9b270b (\"mm/pgtable: allow pte_offset_map[_lock]() to fail\"), this can't lead to anything worse than a BUG_ON(), since the page table access helpers are actually designed to deal with page tables concurrently disappearing; but on older kernels (<=6.4), I think we could probably theoretically race past the two BUG_ON() checks and end up treating a hugepage as a page table.  The second issue is that, as Qi Zheng pointed out, there are other types of huge PMDs that pmd_trans_huge() can't catch: devmap PMDs and swap PMDs (in particular, migration PMDs).  On <=6.4, this is worse than the first issue: If mfill_atomic() runs on a PMD that contains a migration entry (which just requires winning a single, fairly wide race), it will pass the PMD to pte_offset_map_lock(), which assumes that the PMD points to a page table.  Breakage follows: First, the kernel tries to take the PTE lock (which will crash or maybe worse if there is no \"struct page\" for the address bits in the migration entry PMD - I think at least on X86 there usually is no corresponding \"struct page\" thanks to the PTE inversion mitigation, amd64 looks different).  If that didn't crash, the kernel would next try to write a PTE into what it wrongly thinks is a page table.  As part of fixing these issues, get rid of the check for pmd_trans_huge() before __pte_alloc() - that's redundant, we're going to have to check for that after the __pte_alloc() anyway.  Backport note: pmdp_get_lockless() is pmd_read_atomic() in older kernels.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-09-18 08:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37890",
                                "url": "https://ubuntu.com/security/CVE-2025-37890",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc  As described in Gerrard's report [1], we have a UAF case when an hfsc class has a netem child qdisc. The crux of the issue is that hfsc is assuming that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted the class in the vttree or eltree (which is not true for the netem duplicate case).  This patch checks the n_active class variable to make sure that the code won't insert the class in the vttree or eltree twice, catering for the reentrant case.  [1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-16 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37997",
                                "url": "https://ubuntu.com/security/CVE-2025-37997",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  netfilter: ipset: fix region locking in hash types  Region locking introduced in v5.6-rc4 contained three macros to handle the region locks: ahash_bucket_start(), ahash_bucket_end() which gave back the start and end hash bucket values belonging to a given region lock and ahash_region() which should give back the region lock belonging to a given hash bucket. The latter was incorrect which can lead to a race condition between the garbage collector and adding new elements when a hash type of set is defined with timeouts.",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-29 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37798",
                                "url": "https://ubuntu.com/security/CVE-2025-37798",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()  After making all ->qlen_notify() callbacks idempotent, now it is safe to remove the check of qlen!=0 from both fq_codel_dequeue() and codel_qdisc_dequeue().",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-02 15:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2025-37750",
                                "url": "https://ubuntu.com/security/CVE-2025-37750",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in decryption with multichannel  After commit f7025d861694 (\"smb: client: allocate crypto only for primary server\") and commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\"), the channels started reusing AEAD TFM from primary channel to perform synchronous decryption, but that can't done as there could be multiple cifsd threads (one per channel) simultaneously accessing it to perform decryption.  This fixes the following KASAN splat when running fstest generic/249 with 'vers=3.1.1,multichannel,max_channels=4,seal' against Windows Server 2022:  BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xba/0x110 Read of size 8 at addr ffff8881046c18a0 by task cifsd/986 CPU: 3 UID: 0 PID: 986 Comm: cifsd Not tainted 6.15.0-rc1 #1 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  print_report+0x156/0x528  ? gf128mul_4k_lle+0xba/0x110  ? __virt_addr_valid+0x145/0x300  ? __phys_addr+0x46/0x90  ? gf128mul_4k_lle+0xba/0x110  kasan_report+0xdf/0x1a0  ? gf128mul_4k_lle+0xba/0x110  gf128mul_4k_lle+0xba/0x110  ghash_update+0x189/0x210  shash_ahash_update+0x295/0x370  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_shash_ahash_update+0x10/0x10  ? __pfx_extract_iter_to_sg+0x10/0x10  ? ___kmalloc_large_node+0x10e/0x180  ? __asan_memset+0x23/0x50  crypto_ahash_update+0x3c/0xc0  gcm_hash_assoc_remain_continue+0x93/0xc0  crypt_message+0xe09/0xec0 [cifs]  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? _raw_spin_unlock+0x23/0x40  ? __pfx_cifs_readv_from_socket+0x10/0x10 [cifs]  decrypt_raw_data+0x229/0x380 [cifs]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]  ? __pfx_cifs_read_iter_from_socket+0x10/0x10 [cifs]  smb3_receive_transform+0x837/0xc80 [cifs]  ? __pfx_smb3_receive_transform+0x10/0x10 [cifs]  ? __pfx___might_resched+0x10/0x10  ? __pfx_smb3_is_transform_hdr+0x10/0x10 [cifs]  cifs_demultiplex_thread+0x692/0x1570 [cifs]  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  ? rcu_is_watching+0x20/0x50  ? rcu_lockdep_current_cpu_online+0x62/0xb0  ? find_held_lock+0x32/0x90  ? kvm_sched_clock_read+0x11/0x20  ? local_clock_noinstr+0xd/0xd0  ? trace_irq_enable.constprop.0+0xa8/0xe0  ? __pfx_cifs_demultiplex_thread+0x10/0x10 [cifs]  kthread+0x1fe/0x380  ? kthread+0x10f/0x380  ? __pfx_kthread+0x10/0x10  ? local_clock_noinstr+0xd/0xd0  ? ret_from_fork+0x1b/0x60  ? local_clock+0x15/0x30  ? lock_release+0x29b/0x390  ? rcu_is_watching+0x20/0x50  ? __pfx_kthread+0x10/0x10  ret_from_fork+0x31/0x60  ? __pfx_kthread+0x10/0x10  ret_from_fork_asm+0x1a/0x30  </TASK>",
                                "cve_priority": "medium",
                                "cve_public_date": "2025-05-01 13:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-53185",
                                "url": "https://ubuntu.com/security/CVE-2024-53185",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix NULL ptr deref in crypto_aead_setkey()  Neither SMB3.0 or SMB3.02 supports encryption negotiate context, so when SMB2_GLOBAL_CAP_ENCRYPTION flag is set in the negotiate response, the client uses AES-128-CCM as the default cipher.  See MS-SMB2 3.3.5.4.  Commit b0abcd65ec54 (\"smb: client: fix UAF in async decryption\") added a @server->cipher_type check to conditionally call smb3_crypto_aead_allocate(), but that check would always be false as @server->cipher_type is unset for SMB3.02.  Fix the following KASAN splat by setting @server->cipher_type for SMB3.02 as well.  mount.cifs //srv/share /mnt -o vers=3.02,seal,...  BUG: KASAN: null-ptr-deref in crypto_aead_setkey+0x2c/0x130 Read of size 8 at addr 0000000000000020 by task mount.cifs/1095 CPU: 1 UID: 0 PID: 1095 Comm: mount.cifs Not tainted 6.12.0 #1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-3.fc41 04/01/2014 Call Trace:  <TASK>  dump_stack_lvl+0x5d/0x80  ? crypto_aead_setkey+0x2c/0x130  kasan_report+0xda/0x110  ? crypto_aead_setkey+0x2c/0x130  crypto_aead_setkey+0x2c/0x130  crypt_message+0x258/0xec0 [cifs]  ? __asan_memset+0x23/0x50  ? __pfx_crypt_message+0x10/0x10 [cifs]  ? mark_lock+0xb0/0x6a0  ? hlock_class+0x32/0xb0  ? mark_lock+0xb0/0x6a0  smb3_init_transform_rq+0x352/0x3f0 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  smb_send_rqst+0x144/0x230 [cifs]  ? __pfx_smb_send_rqst+0x10/0x10 [cifs]  ? hlock_class+0x32/0xb0  ? smb2_setup_request+0x225/0x3a0 [cifs]  ? __pfx_cifs_compound_last_callback+0x10/0x10 [cifs]  compound_send_recv+0x59b/0x1140 [cifs]  ? __pfx_compound_send_recv+0x10/0x10 [cifs]  ? __create_object+0x5e/0x90  ? hlock_class+0x32/0xb0  ? do_raw_spin_unlock+0x9a/0xf0  cifs_send_recv+0x23/0x30 [cifs]  SMB2_tcon+0x3ec/0xb30 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? __pfx_lock_release+0x10/0x10  ? do_raw_spin_trylock+0xc6/0x120  ? lock_acquire+0x3f/0x90  ? _get_xid+0x16/0xd0 [cifs]  ? __pfx_SMB2_tcon+0x10/0x10 [cifs]  ? cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  cifs_get_smb_ses+0xcdd/0x10a0 [cifs]  ? __pfx_cifs_get_smb_ses+0x10/0x10 [cifs]  ? cifs_get_tcp_session+0xaa0/0xca0 [cifs]  cifs_mount_get_session+0x8a/0x210 [cifs]  dfs_mount_share+0x1b0/0x11d0 [cifs]  ? __pfx___lock_acquire+0x10/0x10  ? __pfx_dfs_mount_share+0x10/0x10 [cifs]  ? lock_acquire.part.0+0xf4/0x2a0  ? find_held_lock+0x8a/0xa0  ? hlock_class+0x32/0xb0  ? lock_release+0x203/0x5d0  cifs_mount+0xb3/0x3d0 [cifs]  ? do_raw_spin_trylock+0xc6/0x120  ? __pfx_cifs_mount+0x10/0x10 [cifs]  ? lock_acquire+0x3f/0x90  ? find_nls+0x16/0xa0  ? smb3_update_mnt_flags+0x372/0x3b0 [cifs]  cifs_smb3_do_mount+0x1e2/0xc80 [cifs]  ? __pfx_vfs_parse_fs_string+0x10/0x10  ? __pfx_cifs_smb3_do_mount+0x10/0x10 [cifs]  smb3_get_tree+0x1bf/0x330 [cifs]  vfs_get_tree+0x4a/0x160  path_mount+0x3c1/0xfb0  ? kasan_quarantine_put+0xc7/0x1d0  ? __pfx_path_mount+0x10/0x10  ? kmem_cache_free+0x118/0x3e0  ? user_path_at+0x74/0xa0  __x64_sys_mount+0x1a6/0x1e0  ? __pfx___x64_sys_mount+0x10/0x10  ? mark_held_locks+0x1a/0x90  do_syscall_64+0xbb/0x1d0  entry_SYSCALL_64_after_hwframe+0x77/0x7f",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-12-27 14:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-50047",
                                "url": "https://ubuntu.com/security/CVE-2024-50047",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  smb: client: fix UAF in async decryption  Doing an async decryption (large read) crashes with a slab-use-after-free way down in the crypto API.  Reproducer:     # mount.cifs -o ...,seal,esize=1 //srv/share /mnt     # dd if=/mnt/largefile of=/dev/null     ...     [  194.196391] ==================================================================     [  194.196844] BUG: KASAN: slab-use-after-free in gf128mul_4k_lle+0xc1/0x110     [  194.197269] Read of size 8 at addr ffff888112bd0448 by task kworker/u77:2/899     [  194.197707]     [  194.197818] CPU: 12 UID: 0 PID: 899 Comm: kworker/u77:2 Not tainted 6.11.0-lku-00028-gfca3ca14a17a-dirty #43     [  194.198400] Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS rel-1.16.2-3-gd478f380-prebuilt.qemu.org 04/01/2014     [  194.199046] Workqueue: smb3decryptd smb2_decrypt_offload [cifs]     [  194.200032] Call Trace:     [  194.200191]  <TASK>     [  194.200327]  dump_stack_lvl+0x4e/0x70     [  194.200558]  ? gf128mul_4k_lle+0xc1/0x110     [  194.200809]  print_report+0x174/0x505     [  194.201040]  ? __pfx__raw_spin_lock_irqsave+0x10/0x10     [  194.201352]  ? srso_return_thunk+0x5/0x5f     [  194.201604]  ? __virt_addr_valid+0xdf/0x1c0     [  194.201868]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202128]  kasan_report+0xc8/0x150     [  194.202361]  ? gf128mul_4k_lle+0xc1/0x110     [  194.202616]  gf128mul_4k_lle+0xc1/0x110     [  194.202863]  ghash_update+0x184/0x210     [  194.203103]  shash_ahash_update+0x184/0x2a0     [  194.203377]  ? __pfx_shash_ahash_update+0x10/0x10     [  194.203651]  ? srso_return_thunk+0x5/0x5f     [  194.203877]  ? crypto_gcm_init_common+0x1ba/0x340     [  194.204142]  gcm_hash_assoc_remain_continue+0x10a/0x140     [  194.204434]  crypt_message+0xec1/0x10a0 [cifs]     [  194.206489]  ? __pfx_crypt_message+0x10/0x10 [cifs]     [  194.208507]  ? srso_return_thunk+0x5/0x5f     [  194.209205]  ? srso_return_thunk+0x5/0x5f     [  194.209925]  ? srso_return_thunk+0x5/0x5f     [  194.210443]  ? srso_return_thunk+0x5/0x5f     [  194.211037]  decrypt_raw_data+0x15f/0x250 [cifs]     [  194.212906]  ? __pfx_decrypt_raw_data+0x10/0x10 [cifs]     [  194.214670]  ? srso_return_thunk+0x5/0x5f     [  194.215193]  smb2_decrypt_offload+0x12a/0x6c0 [cifs]  This is because TFM is being used in parallel.  Fix this by allocating a new AEAD TFM for async decryption, but keep the existing one for synchronous READ cases (similar to what is done in smb3_calc_signature()).  Also remove the calls to aead_request_set_callback() and crypto_wait_req() since it's always going to be a synchronous operation.",
                                "cve_priority": "high",
                                "cve_public_date": "2024-10-21 20:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * jammy/linux-kvm: 5.15.0-1084.89 -proposed tracker (LP: #2114567)",
                            "",
                            "  [ Ubuntu: 5.15.0-144.157 ]",
                            "",
                            "  * jammy/linux: 5.15.0-144.157 -proposed tracker (LP: #2114581)",
                            "  * cifs: NULL pointer dereference in refresh_cache_worker (LP: #2112440)",
                            "    - cifs: fix NULL ptr dereference in refresh_mounts()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581)",
                            "    - platform/x86: asus-wmi: Fix wlan_ctrl_by_user detection",
                            "    - tracing: probes: Fix a possible race in trace_probe_log APIs",
                            "    - iio: adc: ad7768-1: Fix insufficient alignment of timestamp.",
                            "    - iio: chemical: sps30: use aligned_s64 for timestamp",
                            "    - RDMA/rxe: Fix slab-use-after-free Read in rxe_queue_cleanup bug",
                            "    - nfs: handle failure of nfs_get_lock_context in unlock path",
                            "    - spi: loopback-test: Do not split 1024-byte hexdumps",
                            "    - net: cadence: macb: Fix a possible deadlock in macb_halt_tx.",
                            "    - net: dsa: sja1105: discard incoming frames in BR_STATE_LISTENING",
                            "    - ALSA: sh: SND_AICA should depend on SH_DMA_API",
                            "    - qlcnic: fix memory leak in qlcnic_sriov_channel_cfg_cmd()",
                            "    - NFSv4/pnfs: Reset the layout state after a layoutreturn",
                            "    - x86,nospec: Simplify {JMP,CALL}_NOSPEC",
                            "    - x86/speculation: Simplify and make CALL_NOSPEC consistent",
                            "    - x86/speculation: Add a conditional CS prefix to CALL_NOSPEC",
                            "    - x86/speculation: Remove the extra #ifdef around CALL_NOSPEC",
                            "    - Documentation: x86/bugs/its: Add ITS documentation",
                            "    - x86/its: Enumerate Indirect Target Selection (ITS) bug",
                            "    - x86/its: Add support for ITS-safe indirect thunk",
                            "    - [Config] enable ITS mitigation",
                            "    - x86/alternative: Optimize returns patching",
                            "    - x86/alternatives: Remove faulty optimization",
                            "    - x86/its: Add support for ITS-safe return thunk",
                            "    - x86/its: Enable Indirect Target Selection mitigation",
                            "    - x86/its: Add \"vmexit\" option to skip mitigation on some CPUs",
                            "    - x86/its: Align RETs in BHB clear sequence to avoid thunking",
                            "    - x86/its: Use dynamic thunks for indirect branches",
                            "    - x86/its: Fix build errors when CONFIG_MODULES=n",
                            "    - x86/its: FineIBT-paranoid vs ITS",
                            "    - dmaengine: Revert \"dmaengine: dmatest: Fix dmatest waiting less when",
                            "      interrupted\"",
                            "    - btrfs: fix discard worker infinite loop after disabling discard",
                            "    - ACPI: PPTT: Fix processor subtable walk",
                            "    - ALSA: es1968: Add error handling for snd_pcm_hw_constraint_pow2()",
                            "    - ALSA: usb-audio: Add sample rate quirk for Audioengine D1",
                            "    - ALSA: usb-audio: Add sample rate quirk for Microdia JP001 USB Camera",
                            "    - ftrace: Fix preemption accounting for stacktrace trigger command",
                            "    - ftrace: Fix preemption accounting for stacktrace filter command",
                            "    - tracing: samples: Initialize trace_array_printk() with the correct",
                            "      function",
                            "    - phy: Fix error handling in tegra_xusb_port_init",
                            "    - phy: renesas: rcar-gen3-usb2: Set timing registers only once",
                            "    - wifi: mt76: disable napi on driver removal",
                            "    - dmaengine: ti: k3-udma: Add missing locking",
                            "    - dmaengine: ti: k3-udma: Use cap_mask directly from dma_device structure",
                            "      instead of a local copy",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_engines",
                            "    - dmaengine: idxd: fix memory leak in error handling path of",
                            "      idxd_setup_groups",
                            "    - block: fix direct io NOWAIT flag not work",
                            "    - clocksource/i8253: Use raw_spinlock_irqsave() in",
                            "      clockevent_i8253_disable()",
                            "    - usb: typec: fix pm usage counter imbalance in ucsi_ccg_sync_control()",
                            "    - selftests/mm: compaction_test: support platform with huge mount of",
                            "      memory",
                            "    - netfilter: nf_tables: pass nft_chain to destroy function, not nft_ctx",
                            "    - netfilter: nf_tables: wait for rcu grace period on net_device removal",
                            "    - netfilter: nf_tables: do not defer rule destruction via call_rcu",
                            "    - x86/modules: Set VM_FLUSH_RESET_PERMS in module_alloc()",
                            "    - Linux 5.15.184",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49063",
                            "    - ice: arfs: fix use-after-free when freeing @rx_cpu_rmap",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2022-49168",
                            "    - btrfs: do not clean up repair bio if submit fails",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-46751",
                            "    - btrfs: don't BUG_ON() when 0 reference count at",
                            "      btrfs_lookup_extent_info()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-22062",
                            "    - sctp: add mutual exclusion in proc_sctp_do_udp_port()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-53203",
                            "    - usb: typec: fix potential array underflow in ucsi_ccg_sync_control()",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2024-35790",
                            "    - usb: typec: altmodes/displayport: create sysfs nodes as driver's default",
                            "      device attribute group",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37967",
                            "    - usb: typec: ucsi: displayport: Fix deadlock",
                            "  * Jammy update: v5.15.184 upstream stable release (LP: #2112581) //",
                            "    CVE-2025-37992",
                            "    - net_sched: Flush gso_skb list too during ->change()",
                            "  * Mounting btrfs LVM volumes changes mountpoint location and breaks lsblk",
                            "    output (LP: #2107516)",
                            "    - SAUCE: Revert \"btrfs: avoid unnecessary device path update for the same",
                            "      device\"",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705)",
                            "    - can: mcan: m_can_class_unregister(): fix order of unregistration calls",
                            "    - can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls",
                            "    - openvswitch: Fix unsafe attribute parsing in output_userspace()",
                            "    - gre: Fix again IPv6 link-local address generation.",
                            "    - can: gw: use call_rcu() instead of costly synchronize_rcu()",
                            "    - rcu/kvfree: Add kvfree_rcu_mightsleep() and kfree_rcu_mightsleep()",
                            "    - can: gw: fix RCU/BH usage in cgw_create_job()",
                            "    - net: dsa: b53: allow leaky reserved multicast",
                            "    - net: dsa: b53: fix clearing PVID of a port",
                            "    - net: dsa: b53: fix flushing old pvid VLAN on pvid change",
                            "    - net: dsa: b53: fix VLAN ID for untagged vlan on bridge leave",
                            "    - net: dsa: b53: always rejoin default untagged VLAN on bridge leave",
                            "    - net: dsa: b53: fix learning on VLAN unaware bridges",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30-D",
                            "    - Input: synaptics - enable InterTouch on Dynabook Portege X30L-G",
                            "    - Input: synaptics - enable InterTouch on Dell Precision M3800",
                            "    - Input: synaptics - enable SMBus for HP Elitebook 850 G1",
                            "    - Input: synaptics - enable InterTouch on TUXEDO InfinityBook Pro 14 v5",
                            "    - staging: iio: adc: ad7816: Correct conditional logic for store mode",
                            "    - staging: axis-fifo: Remove hardware resets for user errors",
                            "    - staging: axis-fifo: Correct handling of tx_fifo_depth for size",
                            "      validation",
                            "    - iio: adc: ad7606: fix serial register access",
                            "    - iio: adis16201: Correct inclinometer channel resolution",
                            "    - drm/amd/display: Fix wrong handling for AUX_DEFER case",
                            "    - usb: uhci-platform: Make the clock really optional",
                            "    - module: ensure that kobject_put() is safe for module type kobjects",
                            "    - ocfs2: switch osb->disable_recovery to enum",
                            "    - ocfs2: implement handshaking with ocfs2 recovery thread",
                            "    - ocfs2: stop quota recovery before disabling quotas",
                            "    - usb: cdnsp: Fix issue with resuming from L1",
                            "    - usb: cdnsp: fix L1 resume issue for RTL_REVISION_NEW_LPM version",
                            "    - usb: gadget: tegra-xudc: ACK ST_RC after clearing CTRL_RUN",
                            "    - usb: host: tegra: Prevent host controller crash when OTG port is used",
                            "    - usb: typec: tcpm: delay SNK_TRY_WAIT_DEBOUNCE to SRC_TRYWAIT transition",
                            "    - usb: typec: ucsi: displayport: Fix NULL pointer access",
                            "    - USB: usbtmc: use interruptible sleep in usbtmc_read",
                            "    - usb: usbtmc: Fix erroneous get_stb ioctl error returns",
                            "    - usb: usbtmc: Fix erroneous wait_srq ioctl return",
                            "    - usb: usbtmc: Fix erroneous generic_read ioctl return",
                            "    - types: Complement the aligned types with signed 64-bit one",
                            "    - iio: adc: dln2: Use aligned_s64 for timestamp",
                            "    - MIPS: Fix MAX_REG_OFFSET",
                            "    - drm/panel: simple: Update timings for AUO G101EVN010",
                            "    - nvme: unblock ctrl state transition for firmware update",
                            "    - do_umount(): add missing barrier before refcount checks in sync case",
                            "    - x86/bpf: Call branch history clearing sequence on exit",
                            "    - x86/bpf: Add IBHF call at end of classic BPF",
                            "    - x86/bhi: Do not set BHI_DIS_S in 32-bit mode",
                            "    - Linux 5.15.183",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37949",
                            "    - xenbus: Use kref to track req lifetime",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37969",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_tagged_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37970",
                            "    - iio: imu: st_lsm6dsx: fix possible lockup in st_lsm6dsx_read_fifo",
                            "  * Jammy update: v5.15.183 upstream stable release (LP: #2111705) //",
                            "    CVE-2025-37964",
                            "    - x86/mm: Eliminate window where TLB flushes may be inadvertently skipped",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618)",
                            "    - ALSA: usb-audio: Add second USB ID for Jabra Evolve 65 headset",
                            "    - EDAC/altera: Test the correct error reg offset",
                            "    - EDAC/altera: Set DDR and SDMMC interrupt mask before registration",
                            "    - i2c: imx-lpi2c: Fix clock count when probe defers",
                            "    - arm64: errata: Add missing sentinels to Spectre-BHB MIDR arrays",
                            "    - amd-xgbe: Fix to ensure dependent features are toggled with RX checksum",
                            "      offload",
                            "    - mmc: renesas_sdhi: Fix error handling in renesas_sdhi_probe",
                            "    - dm-integrity: fix a warning on invalid table line",
                            "    - dm: always update the array size in realloc_argv on success",
                            "    - iommu/vt-d: Apply quirk_iommu_igfx for 8086:0044 (QM57/QS57)",
                            "    - net/mlx5: E-Switch, Initialize MAC Address for Default GID",
                            "    - net/mlx5: E-switch, Fix error handling for enabling roce",
                            "    - net: ethernet: mtk-star-emac: separate tx/rx handling with two NAPIs",
                            "    - net: ethernet: mtk-star-emac: fix spinlock recursion issues on rx/tx",
                            "      poll",
                            "    - net: ethernet: mtk-star-emac: rearm interrupts in rx_poll only when",
                            "      advised",
                            "    - ice: Refactor promiscuous functions",
                            "    - net: dlink: Correct endianness handling of led_mode",
                            "    - net: ipv6: fix UDPv6 GSO segmentation with NAT",
                            "    - bnxt_en: Fix coredump logic to free allocated buffer",
                            "    - bnxt_en: Fix ethtool -d byte order for 32-bit values",
                            "    - nvme-tcp: fix premature queue removal and I/O failover",
                            "    - net: fec: ERR007885 Workaround for conventional TX",
                            "    - net: hns3: store rx VLAN tag offload state for VF",
                            "    - net: hns3: add support for external loopback test",
                            "    - net: hns3: fix an interrupt residual problem",
                            "    - net: hns3: fixed debugfs tm_qset size",
                            "    - net: hns3: defer calling ptp_clock_register()",
                            "    - PCI: imx6: Skip controller_id generation logic for i.MX7D",
                            "    - net: hns3: fix deadlock issue when externel_lb and reset are executed",
                            "      together",
                            "    - ARM: dts: opos6ul: add ksz8081 phy properties",
                            "    - Revert \"drm/meson: vclk: fix calculation of 59.94 fractional rates\"",
                            "    - irqchip/gic-v2m: Add const to of_device_id",
                            "    - irqchip/gic-v2m: Mark a few functions __init",
                            "    - iommu/arm-smmu-v3: Use the new rb tree helpers",
                            "    - iommu/arm-smmu-v3: Fix iommu_device_probe bug due to duplicated stream",
                            "      ids",
                            "    - dm: fix copying after src array boundaries",
                            "    - Linux 5.15.182",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2022-21546",
                            "    - scsi: target: Fix WRITE_SAME No Data Buffer crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37819",
                            "    - irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37905",
                            "    - firmware: arm_scmi: Balance device refcount when destroying devices",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-38541",
                            "    - of: module: add buffer overflow check in of_modalias()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37909",
                            "    - net: lan743x: Fix memleak issue when GSO enabled",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37911",
                            "    - bnxt_en: Fix out-of-bound memcpy() during ethtool -w",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37912",
                            "    - ice: Check VF VSI Pointer Value in ice_vc_add_fdir_fltr()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37913",
                            "    - net_sched: qfq: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37914",
                            "    - net_sched: ets: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37915",
                            "    - net_sched: drr: Fix double list add in class with netem as child qdisc",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2024-26739",
                            "    - net/sched: act_mirred: don't override retval if we already lost the skb",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-21839",
                            "    - KVM: x86: Load DR6 with guest value only before entering .vcpu_run()",
                            "      loop",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37923",
                            "    - tracing: Fix oob write in trace_seq_to_buffer()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37927",
                            "    - iommu/amd: Fix potential buffer overflow in parse_ivrs_acpihid",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37990",
                            "    - wifi: brcm80211: fmac: Add error handling for brcmf_usb_dl_writeimage()",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37991",
                            "    - parisc: Fix double SIGFPE crash",
                            "  * Jammy update: v5.15.182 upstream stable release (LP: #2111618) //",
                            "    CVE-2025-37930",
                            "    - drm/nouveau: Fix WARN_ON in nouveau_fence_context_kill()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606)",
                            "    - net: ethtool: Don't call .cleanup_data when prepare_data fails",
                            "    - ata: sata_sx4: Drop pointless VPRINTK() calls and convert the remaining",
                            "      ones",
                            "    - ata: sata_sx4: Add error handling in pdc20621_i2c_read()",
                            "    - nvmet-fcloop: swap list_add_tail arguments",
                            "    - nft_set_pipapo: fix incorrect avx2 match of 5th field octet",
                            "    - umount: Allow superblock owners to force umount",
                            "    - x86/cpu: Don't clear X86_FEATURE_LAHF_LM flag in init_amd_k8() on AMD",
                            "      when running in a virtual machine",
                            "    - perf: arm_pmu: Don't disable counter in armpmu_add()",
                            "    - arm64: cputype: Add QCOM_CPU_PART_KRYO_3XX_GOLD",
                            "    - xen/mcelog: Add __nonstring annotations for unterminated strings",
                            "    - HID: pidff: Convert infinite length from Linux API to PID standard",
                            "    - HID: pidff: Do not send effect envelope if it's empty",
                            "    - ALSA: hda: intel: Fix Optimus when GPU has no sound",
                            "    - ASoC: fsl_audmix: register card device depends on 'dais' property",
                            "    - ALSA: usb-audio: Fix CME quirk for UF series keyboards",
                            "    - fs/jfs: cast inactags to s64 to prevent potential overflow",
                            "    - ata: libata-eh: Do not use ATAPI DMA for a device limited to PIO mode",
                            "    - ahci: add PCI ID for Marvell 88SE9215 SATA Controller",
                            "    - ext4: protect ext4_release_dquot against freezing",
                            "    - wifi: mt76: mt76x2u: add TP-Link TL-WDN6200 ID to device table",
                            "    - tracing: fix return value in __ftrace_event_enable_disable for",
                            "      TRACE_REG_UNREGISTER",
                            "    - Bluetooth: hci_uart: fix race during initialization",
                            "    - drm: allow encoder mode_set even when connectors change for crtc",
                            "    - drm/amd/display: Update Cursor request mode to the beginning prefetch",
                            "      always",
                            "    - drm: panel-orientation-quirks: Add support for AYANEO 2S",
                            "    - drm: panel-orientation-quirks: Add new quirk for GPD Win 2",
                            "    - drm/bridge: panel: forbid initializing a panel with unknown connector",
                            "      type",
                            "    - drivers: base: devres: Allow to release group on device release",
                            "    - drm/amdkfd: clamp queue size to minimum",
                            "    - drm/amdkfd: Fix pqm_destroy_queue race with GPU reset",
                            "    - drm/mediatek: mtk_dpi: Explicitly manage TVD clock in power on/off",
                            "    - ktest: Fix Test Failures Due to Missing LOG_FILE Directories",
                            "    - pwm: rcar: Simplify multiplication/shift logic",
                            "    - pwm: rcar: Improve register calculation",
                            "    - pwm: fsl-ftm: Handle clk_get_rate() returning 0",
                            "    - bpf: Add endian modifiers to fix endian warnings",
                            "    - bpf: support SKF_NET_OFF and SKF_LL_OFF on skb frags",
                            "    - ext4: don't treat fhandle lookup of ea_inode as FS corruption",
                            "    - media: i2c: adv748x: Fix test pattern selection mask",
                            "    - media: vim2m: print device name after registering device",
                            "    - media: siano: Fix error handling in smsdvb_module_init()",
                            "    - xenfs/xensyms: respect hypervisor's \"next\" indication",
                            "    - arm64: cputype: Add MIDR_CORTEX_A76AE",
                            "    - arm64: errata: Add QCOM_KRYO_4XX_GOLD to the spectre_bhb_k24_list",
                            "    - arm64: errata: Assume that unknown CPUs _are_ vulnerable to Spectre BHB",
                            "    - arm64: errata: Add KRYO 2XX/3XX/4XX silver cores to Spectre BHB safe",
                            "      list",
                            "    - spi: cadence-qspi: Fix probe on AM62A LP SK",
                            "    - media: streamzap: prevent processing IR data on URB failure",
                            "    - media: v4l2-dv-timings: prevent possible overflow in v4l2_detect_gtf()",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in remove",
                            "    - media: i2c: ccs: Set the device's runtime PM status correctly in probe",
                            "    - media: i2c: ov7251: Set enable GPIO low in probe",
                            "    - media: i2c: ov7251: Introduce 1 ms delay between regulators and en GPIO",
                            "    - mtd: Add check for devm_kcalloc()",
                            "    - net: dsa: mv88e6xxx: workaround RGMII transmit delay erratum for 6320",
                            "      family",
                            "    - mtd: Replace kcalloc() with devm_kcalloc()",
                            "    - clocksource/drivers/stm32-lptimer: Use wakeup capable instead of init",
                            "      wakeup",
                            "    - wifi: mt76: Add check for devm_kstrdup()",
                            "    - wifi: mac80211: fix integer overflow in hwmp_route_info_get()",
                            "    - ASoC: qdsp6: q6asm-dai: fix q6asm_dai_compr_set_params error path",
                            "    - vdpa/mlx5: Fix oversized null mkey longer than 32bit",
                            "    - i3c: master: svc: Use readsb helper for reading MDB",
                            "    - locking/lockdep: Decrease nr_unused_locks if lock unused in zap_class()",
                            "    - lib: scatterlist: fix sg_split_phys to preserve original scatterlist",
                            "      offsets",
                            "    - mptcp: only inc MPJoinAckHMacFailure for HMAC failures",
                            "    - mtd: rawnand: Add status chack in r852_ready()",
                            "    - arm64: dts: mediatek: mt8173: Fix disp-pwm compatible string",
                            "    - sparc/mm: disable preemption in lazy mmu mode",
                            "    - mm: add missing release barrier on PGDAT_RECLAIM_LOCKED unlock",
                            "    - mm/hwpoison: do not send SIGBUS to processes with recovered clean pages",
                            "    - thermal/drivers/rockchip: Add missing rk3328 mapping entry",
                            "    - crypto: ccp - Fix check for the primary ASP device",
                            "    - dm-integrity: set ti->error on memory allocation failure",
                            "    - gpio: zynq: Fix wakeup source leaks on device unbind",
                            "    - ntb: use 64-bit arithmetic for the MSI doorbell mask",
                            "    - of/irq: Fix device node refcount leakages in of_irq_count()",
                            "    - of/irq: Fix device node refcount leakage in API irq_of_parse_and_map()",
                            "    - of/irq: Fix device node refcount leakages in of_irq_init()",
                            "    - PCI: brcmstb: Fix missing of_node_put() in brcm_pcie_probe()",
                            "    - PCI: Fix reference leak in pci_alloc_child_bus()",
                            "    - pinctrl: qcom: Clear latched interrupt status when changing IRQ type",
                            "    - arm64: errata: Add newer ARM cores to the spectre_bhb_loop_affected()",
                            "      lists",
                            "    - ACPI: platform-profile: Fix CFI violation when accessing sysfs files",
                            "    - x86/e820: Fix handling of subpage regions when calculating nosave ranges",
                            "      in e820__register_nosave_regions()",
                            "    - Bluetooth: hci_uart: Fix another race during initialization",
                            "    - scsi: hisi_sas: Start delivery hisi_sas_task_exec() directly",
                            "    - scsi: hisi_sas: Pass abort structure for internal abort",
                            "    - scsi: hisi_sas: Factor out task prep and delivery code",
                            "    - scsi: hisi_sas: Fix setting of hisi_sas_slot.is_internal",
                            "    - scsi: libsas: Delete lldd_clear_aca callback",
                            "    - scsi: libsas: Add struct sas_tmf_task",
                            "    - scsi: hisi_sas: Enable force phy when SATA disk directly connected",
                            "    - wifi: mac80211: Update skb's control block key in ieee80211_tx_dequeue()",
                            "    - scsi: iscsi: Fix missing scsi_host_put() in error path",
                            "    - md/raid10: fix missing discard IO accounting",
                            "    - RDMA/usnic: Fix passing zero to PTR_ERR in usnic_ib_pci_probe()",
                            "    - RDMA/hns: Fix wrong maximum DMA segment size",
                            "    - Bluetooth: hci_event: Fix sending MGMT_EV_DEVICE_FOUND for invalid",
                            "      address",
                            "    - Bluetooth: l2cap: Check encryption key size on incoming connection",
                            "    - Revert \"wifi: mac80211: Update skb's control block key in",
                            "      ieee80211_tx_dequeue()\"",
                            "    - igc: move ktime snapshot into PTM retry loop",
                            "    - igc: handle the IGC_PTP_ENABLED flag correctly",
                            "    - igc: cleanup PTP module if probe fails",
                            "    - net: b53: enable BPDU reception for management port",
                            "    - net: dsa: avoid refcount warnings when ds->ops->tag_8021q_vlan_del()",
                            "      fails",
                            "    - riscv: Properly export reserved regions in /proc/iomem",
                            "    - riscv: KGDB: Do not inline arch_kgdb_breakpoint()",
                            "    - riscv: KGDB: Remove \".option norvc/.option rvc\" for kgdb_compiled_break",
                            "    - cpufreq/sched: Fix the usage of CPUFREQ_NEED_UPDATE_LIMITS",
                            "    - writeback: fix false warning in inode_to_wb()",
                            "    - Revert \"PCI: Avoid reset when disabled via sysfs\"",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix vi feedback rate",
                            "    - ASoC: codecs:lpass-wsa-macro: Fix logic of enabling vi channels",
                            "    - asus-laptop: Fix an uninitialized variable",
                            "    - nfs: move nfs_fhandle_hash to common include file",
                            "    - nfs: add missing selections of CONFIG_CRC32",
                            "    - btrfs: correctly escape subvol in btrfs_show_options()",
                            "    - crypto: caam/qi - Fix drv_ctx refcount bug",
                            "    - loop: properly send KOBJ_CHANGED uevent for disk device",
                            "    - loop: LOOP_SET_FD: send uevents for partitions",
                            "    - mm/gup: fix wrongly calculated returned value in",
                            "      fault_in_safe_writeable()",
                            "    - riscv: Avoid fortify warning in syscall_get_arguments()",
                            "    - tracing: Fix filter string testing",
                            "    - perf/x86/intel: Allow to update user space GPRs from PEBS records",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SNR",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on ICX",
                            "    - perf/x86/intel/uncore: Fix the scale of IIO free running counters on SPR",
                            "    - drm/repaper: fix integer overflows in repeat functions",
                            "    - drm/amdgpu/dma_buf: fix page_link check",
                            "    - drm/sti: remove duplicate object names",
                            "    - KVM: arm64: Get rid of host SVE tracking/saving",
                            "    - KVM: arm64: Always start with clearing SVE flag on load",
                            "    - KVM: arm64: Discard any SVE state when entering KVM guests",
                            "    - arm64/fpsimd: Track the saved FPSIMD state type separately to TIF_SVE",
                            "    - arm64/fpsimd: Have KVM explicitly say which FP registers to save",
                            "    - arm64/fpsimd: Stop using TIF_SVE to manage register saving in KVM",
                            "    - KVM: arm64: Unconditionally save+flush host FPSIMD/SVE/SME state",
                            "    - KVM: arm64: Remove host FPSIMD saving for non-protected KVM",
                            "    - KVM: arm64: Remove VHE host restore of CPACR_EL1.ZEN",
                            "    - KVM: arm64: Calculate cptr_el2 traps on activating traps",
                            "    - KVM: arm64: Eagerly switch ZCR_EL{1,2}",
                            "    - cpufreq: Reference count policy in cpufreq_update_limits()",
                            "    - kbuild: Add '-fno-builtin-wcslen'",
                            "    - mptcp: sockopt: fix getting IPV6_V6ONLY",
                            "    - misc: pci_endpoint_test: Fix displaying 'irq_type' after 'request_irq'",
                            "      error",
                            "    - misc: pci_endpoint_test: Fix 'irq_type' to convey the correct type",
                            "    - x86/pvh: Call C code via the kernel virtual mapping",
                            "    - landlock: Add the errata interface",
                            "    - nvmet-fc: Remove unused functions",
                            "    - Revert \"smb: client: fix use-after-free bug in",
                            "      cifs_debug_data_proc_show()\"",
                            "    - smb: client: fix use-after-free bug in cifs_debug_data_proc_show()",
                            "    - blk-cgroup: support to track if policy is online",
                            "    - net: openvswitch: fix race on port output",
                            "    - openvswitch: fix lockup on tx to unregistering netdev with carrier",
                            "    - MIPS: dec: Declare which_prom() as static",
                            "    - MIPS: cevt-ds1287: Add missing ds1287.h include",
                            "    - MIPS: ds1287: Match ds1287_set_base_clock() function types",
                            "    - mm: fix apply_to_existing_page_range()",
                            "    - module: sign with sha512 instead of sha1 by default",
                            "    - media: streamzap: remove unnecessary ir_raw_event_reset and handle",
                            "    - media: streamzap: no need for usb pid/vid in device name",
                            "    - media: streamzap: less chatter",
                            "    - media: streamzap: remove unused struct members",
                            "    - auxdisplay: hd44780: Convert to platform remove callback returning void",
                            "    - auxdisplay: hd44780: Fix an API misuse in hd44780.c",
                            "    - net: dsa: mv88e6xxx: fix VTU methods for 6320 family",
                            "    - soc: samsung: exynos-chipid: avoid soc_device_to_device()",
                            "    - soc: samsung: exynos-chipid: Pass revision reg offsets",
                            "    - iio: adc: ad7768-1: Move setting of val a bit later to avoid unnecessary",
                            "      return value check",
                            "    - iio: adc: ad7768-1: Fix conversion result sign",
                            "    - backlight: led_bl: Convert to platform remove callback returning void",
                            "    - cifs: print TIDs as hex",
                            "    - cifs: fix integer overflow in match_server()",
                            "    - gpio: tegra186: Force one interrupt per bank",
                            "    - gpio: tegra186: fix resource handling in ACPI probe path",
                            "    - Revert \"PCI: Coalesce host bridge contiguous apertures\"",
                            "    - PCI: Coalesce host bridge contiguous apertures",
                            "    - PCI: Assign PCI domain IDs by ida_alloc()",
                            "    - ksmbd: Prevent integer overflow in calculation of deadtime",
                            "    - selftests/mm: generate a temporary mountpoint for cgroup filesystem",
                            "    - kmsan: disable strscpy() optimization under KMSAN",
                            "    - string: Add load_unaligned_zeropad() code path to sized_strscpy()",
                            "    - drm/msm/a6xx: Improve gpu recovery sequence",
                            "    - drm/msm/a6xx: Handle GMU prepare-slumber hfi failure",
                            "    - drm/msm/a6xx: Avoid gx gbit halt during rpm suspend",
                            "    - drm/msm/a6xx: Fix stale rpmh votes from GPU",
                            "    - dma/contiguous: avoid warning about unused size_bytes",
                            "    - cpufreq: cppc: Fix invalid return value in .get() callback",
                            "    - iommu/amd: Return an error if vCPU affinity is set for non-vCPU IRTE",
                            "    - virtio_console: fix missing byte order handling for cols and rows",
                            "    - net: selftests: initialize TCP header and skb payload with zero",
                            "    - drm/amd/display: Fix gpu reset in multidisplay config",
                            "    - KVM: SVM: Allocate IR data using atomic allocation",
                            "    - USB: storage: quirk for ADATA Portable HDD CH94",
                            "    - mei: me: add panther lake H DID",
                            "    - serial: sifive: lock port in startup()/shutdown() callbacks",
                            "    - USB: serial: ftdi_sio: add support for Abacus Electrics Optical Probe",
                            "    - USB: serial: option: add Sierra Wireless EM9291",
                            "    - USB: serial: simple: add OWON HDS200 series oscilloscope support",
                            "    - usb: chipidea: ci_hdrc_imx: fix call balance of regulator routines",
                            "    - usb: chipidea: ci_hdrc_imx: implement usb_phy_init() error handling",
                            "    - USB: OHCI: Add quirk for LS7A OHCI controller (rev 0x02)",
                            "    - usb: quirks: add DELAY_INIT quirk for Silicon Motion Flash Drive",
                            "    - usb: quirks: Add delay init quirk for SanDisk 3.2Gen1 Flash Drive",
                            "    - USB: VLI disk crashes if LPM is used",
                            "    - USB: wdm: handle IO errors in wdm_wwan_port_start",
                            "    - USB: wdm: wdm_wwan_port_tx_complete mutex in atomic context",
                            "    - USB: wdm: add annotation",
                            "    - MIPS: cm: Detect CM quirks from device tree",
                            "    - clk: check for disabled clock-provider in of_clk_get_hw_from_clkspec()",
                            "    - parisc: PDT: Fix missing prototype warning",
                            "    - s390/tty: Fix a potential memory leak bug",
                            "    - usb: host: max3421-hcd: Add missing spi_device_id table",
                            "    - fs/ntfs3: Fix WARNING in ntfs_extend_initialized_size",
                            "    - usb: dwc3: gadget: Avoid using reserved endpoints on Intel Merrifield",
                            "    - dmaengine: dmatest: Fix dmatest waiting less when interrupted",
                            "    - usb: xhci: Avoid Stop Endpoint retry loop if the endpoint seems Running",
                            "    - objtool, ASoC: codecs: wcd934x: Remove potential undefined behavior in",
                            "      wcd934x_slim_irq_handler()",
                            "    - ntb: reduce stack usage in idt_scan_mws",
                            "    - sched/isolation: Make CONFIG_CPU_ISOLATION depend on CONFIG_SMP",
                            "    - KVM: s390: Don't use %pK through tracepoints",
                            "    - selftests: ublk: fix test_stripe_04",
                            "    - xen: Change xen-acpi-processor dom0 dependency",
                            "    - nvme: requeue namespace scan on missed AENs",
                            "    - ACPI PPTT: Fix coding mistakes in a couple of sizeof() calls",
                            "    - nvme: re-read ANA log page after ns scan completes",
                            "    - objtool: Stop UNRET validation on UD2",
                            "    - selftests/mincore: Allow read-ahead pages to reach the end of the file",
                            "    - x86/bugs: Use SBPB in write_ibpb() if applicable",
                            "    - x86/bugs: Don't fill RSB on VMEXIT with eIBRS+retpoline",
                            "    - x86/bugs: Don't fill RSB on context switch with eIBRS",
                            "    - nvmet-fc: take tgtport reference only once",
                            "    - nvmet-fc: put ref when assoc->del_work is already scheduled",
                            "    - ext4: make block validity check resistent to sb bh corruption",
                            "    - scsi: hisi_sas: Fix I/O errors caused by hardware port ID changes",
                            "    - scsi: pm80xx: Set phy_attached to zero when device is gone",
                            "    - loop: aio inherit the ioprio of original request",
                            "    - ubsan: Fix panic from test_ubsan_out_of_bounds",
                            "    - md/raid1: Add check for missing source disk in process_checks()",
                            "    - jfs: define xtree root and page independently",
                            "    - comedi: jr3_pci: Fix synchronous deletion of timer",
                            "    - crypto: atmel-sha204a - Set hwrng quality to lowest possible",
                            "    - net: dsa: mv88e6xxx: fix atu_move_port_mask for 6341 family",
                            "    - net: dsa: mv88e6xxx: enable PVT for 6321 switch",
                            "    - net: dsa: mv88e6xxx: enable .port_set_policy() for 6320 family",
                            "    - xdp: Reset bpf_redirect_info before running a xdp's BPF prog.",
                            "    - MIPS: cm: Fix warning if MIPS_CM is disabled",
                            "    - nvme: fixup scan failure for non-ANA multipath controllers",
                            "    - PCI: Fix use-after-free in pci_bus_release_domain_nr()",
                            "    - PCI: Fix dropping valid root bus resources with .end = zero",
                            "    - PCI: Release resource invalidated by coalescing",
                            "    - Linux 5.15.181",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49989",
                            "    - drm/amd/display: fix double free issue during amdgpu module unload",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37803",
                            "    - udmabuf: fix a buf size overflow issue during udmabuf creation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37983",
                            "    - qibfs: fix _another_ leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37881",
                            "    - usb: gadget: aspeed: Add NULL pointer check in ast_vhub_init_dev()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37805",
                            "    - sound/virtio: Fix cancel_sync warnings on uninitialized work_structs",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37883",
                            "    - s390/sclp: Add check for get_zeroed_page()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37808",
                            "    - crypto: null - Use spin lock instead of mutex",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37985",
                            "    - USB: wdm: close race between wdm_open and wdm_wwan_port_stop",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37810",
                            "    - usb: dwc3: gadget: check that event count does not exceed event buffer",
                            "      length",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37811",
                            "    - usb: chipidea: ci_hdrc_imx: fix usbmisc handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37812",
                            "    - usb: cdns3: Fix deadlock when using NCM gadget",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37885",
                            "    - KVM: x86: Reset IRTE to host control if *new* route isn't postable",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37817",
                            "    - mcb: fix a double free bug in chameleon_parse_gdd()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37823",
                            "    - net_sched: hfsc: Fix a potential UAF in hfsc_dequeue() too",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37797",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class handling",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37824",
                            "    - tipc: fix NULL pointer dereference in tipc_mon_reinit_self()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37989",
                            "    - net: phy: leds: fix memory leak",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37829",
                            "    - cpufreq: scpi: Fix null-ptr-deref in scpi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37830",
                            "    - cpufreq: scmi: Fix null-ptr-deref in scmi_cpufreq_get_rate()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37836",
                            "    - PCI: Fix reference leak in pci_register_host_bridge()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37844",
                            "    - cifs: avoid NULL pointer dereference in dbg call",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23144",
                            "    - backlight: led_bl: Hold led_access lock when calling led_sysfs_disable()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23148",
                            "    - soc: samsung: exynos-chipid: Add NULL pointer check in",
                            "      exynos_chipid_probe()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-22027",
                            "    - media: streamzap: fix race between device disconnection and urb callback",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50125",
                            "    - Bluetooth: SCO: Fix UAF on sco_sock_timeout",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-49535",
                            "    - scsi: lpfc: Fix null pointer dereference after failing to issue FLOGI",
                            "      and PLOGI",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35943",
                            "    - pmdomain: ti: Add a null pointer check to the omap_prm_domain_init",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-26686",
                            "    - fs/proc: do_task_stat: use sig->stats_lock to gather the",
                            "      threads/children stats",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2022-48893",
                            "    - drm/i915/gt: Cleanup partial engine discovery failures",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50280",
                            "    - dm cache: fix flushing uninitialized delayed_work on cache_ctr error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-54458",
                            "    - scsi: ufs: bsg: Set bsg_queue to NULL after removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-42322",
                            "    - ipvs: properly dereference pe in ip_vs_add_service",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-49960",
                            "    - ext4: fix timer use-after-free on failed mount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-36908",
                            "    - blk-iocost: do not WARN if iocg was already offlined",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-21853",
                            "    - bpf: avoid holding freeze_mutex during mmap operation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-53128",
                            "    - sched/task_stack: fix object_is_on_stack() for KASAN tagged pointers",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35867",
                            "    - smb: client: fix potential UAF in cifs_stats_proc_show()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52757",
                            "    - smb: client: fix potential deadlock when releasing mids",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46742",
                            "    - smb/server: fix potential null-ptr-deref of lease_ctx_info in",
                            "      smb2_open()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2023-52572",
                            "    - cifs: Fix UAF in cifs_demultiplex_thread()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-35866",
                            "    - smb: client: fix potential UAF in cifs_dump_full_key()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46816",
                            "    - drm/amd/display: Stop amdgpu_dm initialize when link nums greater than",
                            "      max_links",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-46774",
                            "    - powerpc/rtas: Prevent Spectre v1 gadget construction in sys_rtas()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-38540",
                            "    - bnxt_re: avoid shift undefined behavior in bnxt_qplib_alloc_init_hwq",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-27402",
                            "    - phonet/pep: fix racy skb_queue_empty() use",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50272",
                            "    - filemap: Fix bounds checking in filemap_read()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-50258",
                            "    - net: fix crash when config small gso_max_size/gso_ipv4_max_size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2024-56751",
                            "    - ipv6: release nexthop on device removal",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23140",
                            "    - misc: pci_endpoint_test: Avoid issue of interrupts remaining after",
                            "      request_irq error",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37765",
                            "    - drm/nouveau: prime: fix ttm_bo_delayed_delete oops",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37766",
                            "    - drm/amd/pm/powerplay/hwmgr/vega20_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37767",
                            "    - drm/amd/pm/swsmu/smu13/smu_v13_0: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768",
                            "    - drm/amd/pm/powerplay/hwmgr/smu7_thermal: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37770",
                            "    - drm/amd/pm/powerplay: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37768 // CVE-2025-37771",
                            "    - drm/amd/pm: Prevent division by zero",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37773",
                            "    - virtiofs: add filesystem context source name check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37780",
                            "    - isofs: Prevent the use of too small fid",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37781",
                            "    - i2c: cros-ec-tunnel: defer probe if parent EC is not present",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37782",
                            "    - hfs/hfsplus: fix slab-out-of-bounds in hfs_bnode_read_key",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-0927 has been rejected. Revert this fix and apply upstream fix",
                            "    - Revert \"UBUNTU: SAUCE: fs: hfs/hfsplus: add key_len boundary check to",
                            "      hfs_bnode_read_key\"",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37871",
                            "    - nfsd: decrease sc_count directly if fail to queue dl_recall",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37787",
                            "    - net: dsa: mv88e6xxx: avoid unregistering devlink regions which were",
                            "      never registered",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37788",
                            "    - cxgb4: fix memory leak in cxgb4_init_ethtool_filters() error path",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37789",
                            "    - net: openvswitch: fix nested key length validation in the set() action",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37790",
                            "    - net: mctp: Set SOCK_RCU_FREE",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37875",
                            "    - igc: fix PTM cycle trigger logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37792",
                            "    - Bluetooth: btrtl: Prevent potential NULL dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37867",
                            "    - RDMA/core: Silence oversized kvmalloc() warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37982",
                            "    - wifi: wl1251: fix memory leak in wl1251_tx_work",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37794",
                            "    - wifi: mac80211: Purge vif txq in ieee80211_do_stop()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37796",
                            "    - wifi: at76c50x: fix use after free access in at76_disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37838",
                            "    - HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol",
                            "      Driver Due to Race Condition",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37940",
                            "    - ftrace: Add cond_resched() to ftrace_graph_set_hash()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23142",
                            "    - sctp: detect and prevent references to a freed transport in sendmsg",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37892",
                            "    - mtd: inftlcore: Add error check for inftl_read_oob()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23145",
                            "    - mptcp: fix NULL pointer in can_accept_new_subflow",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23146",
                            "    - mfd: ene-kb3930: Fix a potential NULL pointer dereference",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37839",
                            "    - jbd2: remove wrong sb->s_sequence check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23147",
                            "    - i3c: Add NULL pointer check in i3c_master_queue_ibi()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23150",
                            "    - ext4: fix off-by-one error in do_split",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23151",
                            "    - bus: mhi: host: Fix race between unprepare and queue_buf",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23156",
                            "    - media: venus: hfi_parser: refactor hfi packet parsing logic",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23157",
                            "    - media: venus: hfi_parser: add check to avoid out of bound access",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37840",
                            "    - mtd: rawnand: brcmnand: fix PM resume warning",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23158",
                            "    - media: venus: hfi: add check to handle incorrect queue size",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23159",
                            "    - media: venus: hfi: add a check to handle OOB in sfr region",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37850",
                            "    - pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37851",
                            "    - fbdev: omapfb: Add 'plane' value check",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23161",
                            "    - PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-23163",
                            "    - net: vlan: don't propagate flags on open",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37857",
                            "    - scsi: st: Fix array overflow in st_setup()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37738",
                            "    - ext4: ignore xattrs past end",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37739",
                            "    - f2fs: fix to avoid out-of-bounds access in f2fs_truncate_inode_blocks()",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37740",
                            "    - jfs: add sanity check for agwidth in dbMount",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37741",
                            "    - jfs: Prevent copying of nlink with value 0 from disk inode",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37858",
                            "    - fs/jfs: Prevent integer overflow in AG size calculation",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37742",
                            "    - jfs: Fix uninit-value access of imap allocated in the diMount() function",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37859",
                            "    - page_pool: avoid infinite loop to schedule delayed worker",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37862",
                            "    - HID: pidff: Fix null pointer dereference in pidff_find_fields",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37841",
                            "    - pm: cpupower: bench: Prevent NULL dereference on malloc failure",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37749",
                            "    - net: ppp: Add bound checking for skb data on ppp_sync_txmung",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37756",
                            "    - net: tls: explicitly disallow disconnect",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37757",
                            "    - tipc: fix memory leak in tipc_link_xmit",
                            "  * Jammy update: v5.15.181 upstream stable release (LP: #2111606) //",
                            "    CVE-2025-37758",
                            "    - ata: pata_pxa: Fix potential NULL pointer dereference in pxa_ata_probe()",
                            "  * CVE-2024-53051",
                            "    - drm/i915/hdcp: Add encoder check in intel_hdcp_get_capability",
                            "  * CVE-2024-46787",
                            "    - userfaultfd: fix checks for huge PMDs",
                            "  * CVE-2025-37890",
                            "    - net_sched: hfsc: Fix a UAF vulnerability in class with netem as child",
                            "      qdisc",
                            "    - sch_hfsc: Fix qlen accounting bug when using peek in hfsc_enqueue()",
                            "    - net_sched: hfsc: Address reentrant enqueue adding class to eltree twice",
                            "  * CVE-2025-37997",
                            "    - netfilter: ipset: fix region locking in hash types",
                            "  * CVE-2025-37798",
                            "    - sch_htb: make htb_qlen_notify() idempotent",
                            "    - sch_htb: make htb_deactivate() idempotent",
                            "    - sch_drr: make drr_qlen_notify() idempotent",
                            "    - sch_hfsc: make hfsc_qlen_notify() idempotent",
                            "    - sch_qfq: make qfq_qlen_notify() idempotent",
                            "    - sch_ets: make est_qlen_notify() idempotent",
                            "    - codel: remove sch->q.qlen check before qdisc_tree_reduce_backlog()",
                            "  * CVE-2025-37750",
                            "    - smb: client: fix UAF in decryption with multichannel",
                            "  * CVE-2024-53185",
                            "    - smb: client: fix NULL ptr deref in crypto_aead_setkey()",
                            "  * CVE-2024-50047",
                            "    - smb: client: fix UAF in async decryption",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] update variants",
                            "    - [Packaging] update annotations scripts",
                            ""
                        ],
                        "package": "linux-kvm",
                        "version": "5.15.0-1084.89",
                        "urgency": "medium",
                        "distributions": "jammy",
                        "launchpad_bugs_fixed": [
                            2114567,
                            2114581,
                            2112440,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2112581,
                            2107516,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111705,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111618,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            2111606,
                            1786013
                        ],
                        "author": "Guoqing Jiang <guoqing.jiang@canonical.com>",
                        "date": "Tue, 24 Jun 2025 13:35:25 +0800"
                    }
                ],
                "notes": "linux-modules-5.15.0-1084-kvm version '5.15.0-1084.89' (source package linux-kvm version '5.15.0-1084.89') was added. linux-modules-5.15.0-1084-kvm version '5.15.0-1084.89' has the same source package name, linux-kvm, as removed package linux-headers-5.15.0-1083-kvm. As such we can use the source package version of the removed package, '5.15.0-1083.88', as the starting point in our changelog diff. Kernel packages are an example of where the binary package name changes for the same source package. Using the removed package source package version as our starting point means we can still get meaningful changelog diffs even for what appears to be a new package.",
                "is_version_downgrade": false
            }
        ],
        "snap": []
    },
    "removed": {
        "deb": [
            {
                "name": "linux-headers-5.15.0-1083-kvm",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": "5.15.0-1083.88"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-image-5.15.0-1083-kvm",
                "from_version": {
                    "source_package_name": "linux-signed-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": "5.15.0-1083.88"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-kvm-headers-5.15.0-1083",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": "5.15.0-1083.88"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null,
                "is_version_downgrade": false
            },
            {
                "name": "linux-modules-5.15.0-1083-kvm",
                "from_version": {
                    "source_package_name": "linux-kvm",
                    "source_package_version": "5.15.0-1083.88",
                    "version": "5.15.0-1083.88"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null,
                "is_version_downgrade": false
            }
        ],
        "snap": []
    },
    "notes": "Changelog diff for Ubuntu 22.04 jammy image from release image serial 20250630 to 20250724",
    "from_series": "jammy",
    "to_series": "jammy",
    "from_serial": "20250630",
    "to_serial": "20250724",
    "from_manifest_filename": "release_manifest.previous",
    "to_manifest_filename": "manifest.current"
}