{
    "summary": {
        "snap": {
            "added": [],
            "removed": [],
            "diff": []
        },
        "deb": {
            "added": [
                "linux-headers-6.8.0-41",
                "linux-headers-6.8.0-41-generic",
                "linux-image-6.8.0-41-generic",
                "linux-modules-6.8.0-41-generic",
                "linux-tools-6.8.0-41",
                "linux-tools-6.8.0-41-generic"
            ],
            "removed": [
                "linux-headers-6.8.0-40",
                "linux-headers-6.8.0-40-generic",
                "linux-image-6.8.0-40-generic",
                "linux-modules-6.8.0-40-generic",
                "linux-tools-6.8.0-40",
                "linux-tools-6.8.0-40-generic"
            ],
            "diff": [
                "busybox-initramfs",
                "busybox-static",
                "dpkg",
                "linux-headers-generic",
                "linux-headers-virtual",
                "linux-image-virtual",
                "linux-libc-dev",
                "linux-tools-common",
                "linux-virtual"
            ]
        }
    },
    "diff": {
        "deb": [
            {
                "name": "busybox-initramfs",
                "from_version": {
                    "source_package_name": "busybox",
                    "source_package_version": "1:1.36.1-6ubuntu3",
                    "version": "1:1.36.1-6ubuntu3"
                },
                "to_version": {
                    "source_package_name": "busybox",
                    "source_package_version": "1:1.36.1-6ubuntu3.1",
                    "version": "1:1.36.1-6ubuntu3.1"
                },
                "cves": [
                    {
                        "cve": "CVE-2022-48174",
                        "url": "https://ubuntu.com/security/CVE-2022-48174",
                        "cve_description": "There is a stack overflow vulnerability in ash.c:6030 in busybox before 1.35. In the environment of Internet of Vehicles, this vulnerability can be executed from command to arbitrary code execution.",
                        "cve_priority": "low",
                        "cve_public_date": "2023-08-22 19:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42364",
                        "url": "https://ubuntu.com/security/CVE-2023-42364",
                        "cve_description": "A use-after-free vulnerability in BusyBox v.1.36.1 allows attackers to cause a denial of service via a crafted awk pattern in the awk.c evaluate function.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 23:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42365",
                        "url": "https://ubuntu.com/security/CVE-2023-42365",
                        "cve_description": "A use-after-free vulnerability was discovered in BusyBox v.1.36.1 via a crafted awk pattern in the awk.c copyvar function.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 23:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42363",
                        "url": "https://ubuntu.com/security/CVE-2023-42363",
                        "cve_description": "A use-after-free vulnerability was discovered in xasprintf function in xfuncs_printf.c:344 in BusyBox v.1.36.1.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 22:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2022-48174",
                                "url": "https://ubuntu.com/security/CVE-2022-48174",
                                "cve_description": "There is a stack overflow vulnerability in ash.c:6030 in busybox before 1.35. In the environment of Internet of Vehicles, this vulnerability can be executed from command to arbitrary code execution.",
                                "cve_priority": "low",
                                "cve_public_date": "2023-08-22 19:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42364",
                                "url": "https://ubuntu.com/security/CVE-2023-42364",
                                "cve_description": "A use-after-free vulnerability in BusyBox v.1.36.1 allows attackers to cause a denial of service via a crafted awk pattern in the awk.c evaluate function.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 23:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42365",
                                "url": "https://ubuntu.com/security/CVE-2023-42365",
                                "cve_description": "A use-after-free vulnerability was discovered in BusyBox v.1.36.1 via a crafted awk pattern in the awk.c copyvar function.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 23:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42363",
                                "url": "https://ubuntu.com/security/CVE-2023-42363",
                                "cve_description": "A use-after-free vulnerability was discovered in xasprintf function in xfuncs_printf.c:344 in BusyBox v.1.36.1.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 22:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * SECURITY UPDATE: stack overflow in ash",
                            "    - debian/patches/CVE-2022-48174.patch: error out on number followed by",
                            "      another number or variable name in shell/math.c.",
                            "    - CVE-2022-48174",
                            "  * SECURITY UPDATE: use after free in awk",
                            "    - debian/patches/CVE-2023-42364.patch: fix precedence of = relative to ==",
                            "      in editors/awk.c.",
                            "    - debian/patches/fix-awk-assignment-precedence.patch: restore assignment",
                            "      precedence to be lower than ternary ?: in editors/awk.c.",
                            "    - CVE-2023-42364, CVE-2023-42365",
                            "  * SECURITY UPDATE: use after free in awk",
                            "    - debian/patches/CVE-2023-42363.patch: get L.s after R.v is evaluated in",
                            "      editors/awk.c.",
                            "    - CVE-2023-42363",
                            ""
                        ],
                        "package": "busybox",
                        "version": "1:1.36.1-6ubuntu3.1",
                        "urgency": "medium",
                        "distributions": "noble-security",
                        "launchpad_bugs_fixed": [],
                        "author": "Octavio Galland <octavio.galland@canonical.com>",
                        "date": "Tue, 13 Aug 2024 10:42:58 -0300"
                    }
                ],
                "notes": null
            },
            {
                "name": "busybox-static",
                "from_version": {
                    "source_package_name": "busybox",
                    "source_package_version": "1:1.36.1-6ubuntu3",
                    "version": "1:1.36.1-6ubuntu3"
                },
                "to_version": {
                    "source_package_name": "busybox",
                    "source_package_version": "1:1.36.1-6ubuntu3.1",
                    "version": "1:1.36.1-6ubuntu3.1"
                },
                "cves": [
                    {
                        "cve": "CVE-2022-48174",
                        "url": "https://ubuntu.com/security/CVE-2022-48174",
                        "cve_description": "There is a stack overflow vulnerability in ash.c:6030 in busybox before 1.35. In the environment of Internet of Vehicles, this vulnerability can be executed from command to arbitrary code execution.",
                        "cve_priority": "low",
                        "cve_public_date": "2023-08-22 19:16:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42364",
                        "url": "https://ubuntu.com/security/CVE-2023-42364",
                        "cve_description": "A use-after-free vulnerability in BusyBox v.1.36.1 allows attackers to cause a denial of service via a crafted awk pattern in the awk.c evaluate function.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 23:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42365",
                        "url": "https://ubuntu.com/security/CVE-2023-42365",
                        "cve_description": "A use-after-free vulnerability was discovered in BusyBox v.1.36.1 via a crafted awk pattern in the awk.c copyvar function.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 23:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2023-42363",
                        "url": "https://ubuntu.com/security/CVE-2023-42363",
                        "cve_description": "A use-after-free vulnerability was discovered in xasprintf function in xfuncs_printf.c:344 in BusyBox v.1.36.1.",
                        "cve_priority": "medium",
                        "cve_public_date": "2023-11-27 22:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2022-48174",
                                "url": "https://ubuntu.com/security/CVE-2022-48174",
                                "cve_description": "There is a stack overflow vulnerability in ash.c:6030 in busybox before 1.35. In the environment of Internet of Vehicles, this vulnerability can be executed from command to arbitrary code execution.",
                                "cve_priority": "low",
                                "cve_public_date": "2023-08-22 19:16:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42364",
                                "url": "https://ubuntu.com/security/CVE-2023-42364",
                                "cve_description": "A use-after-free vulnerability in BusyBox v.1.36.1 allows attackers to cause a denial of service via a crafted awk pattern in the awk.c evaluate function.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 23:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42365",
                                "url": "https://ubuntu.com/security/CVE-2023-42365",
                                "cve_description": "A use-after-free vulnerability was discovered in BusyBox v.1.36.1 via a crafted awk pattern in the awk.c copyvar function.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 23:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2023-42363",
                                "url": "https://ubuntu.com/security/CVE-2023-42363",
                                "cve_description": "A use-after-free vulnerability was discovered in xasprintf function in xfuncs_printf.c:344 in BusyBox v.1.36.1.",
                                "cve_priority": "medium",
                                "cve_public_date": "2023-11-27 22:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * SECURITY UPDATE: stack overflow in ash",
                            "    - debian/patches/CVE-2022-48174.patch: error out on number followed by",
                            "      another number or variable name in shell/math.c.",
                            "    - CVE-2022-48174",
                            "  * SECURITY UPDATE: use after free in awk",
                            "    - debian/patches/CVE-2023-42364.patch: fix precedence of = relative to ==",
                            "      in editors/awk.c.",
                            "    - debian/patches/fix-awk-assignment-precedence.patch: restore assignment",
                            "      precedence to be lower than ternary ?: in editors/awk.c.",
                            "    - CVE-2023-42364, CVE-2023-42365",
                            "  * SECURITY UPDATE: use after free in awk",
                            "    - debian/patches/CVE-2023-42363.patch: get L.s after R.v is evaluated in",
                            "      editors/awk.c.",
                            "    - CVE-2023-42363",
                            ""
                        ],
                        "package": "busybox",
                        "version": "1:1.36.1-6ubuntu3.1",
                        "urgency": "medium",
                        "distributions": "noble-security",
                        "launchpad_bugs_fixed": [],
                        "author": "Octavio Galland <octavio.galland@canonical.com>",
                        "date": "Tue, 13 Aug 2024 10:42:58 -0300"
                    }
                ],
                "notes": null
            },
            {
                "name": "dpkg",
                "from_version": {
                    "source_package_name": "dpkg",
                    "source_package_version": "1.22.6ubuntu6",
                    "version": "1.22.6ubuntu6"
                },
                "to_version": {
                    "source_package_name": "dpkg",
                    "source_package_version": "1.22.6ubuntu6.1",
                    "version": "1.22.6ubuntu6.1"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    2064539,
                    2064538
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * SRU:",
                            "    - Disable framepointer on ppc64el. LP: #2064539.",
                            "    - Disable framepointer on s390x, leaving only -mbackchain. LP: #2064538.",
                            ""
                        ],
                        "package": "dpkg",
                        "version": "1.22.6ubuntu6.1",
                        "urgency": "medium",
                        "distributions": "noble-security",
                        "launchpad_bugs_fixed": [
                            2064539,
                            2064538
                        ],
                        "author": "Matthias Klose <doko@ubuntu.com>",
                        "date": "Wed, 17 Jul 2024 11:09:50 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-headers-generic",
                "from_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 6.8.0-41.41",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/dkms-versions -- resync from main package",
                            ""
                        ],
                        "package": "linux-meta",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:38:45 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-headers-virtual",
                "from_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 6.8.0-41.41",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/dkms-versions -- resync from main package",
                            ""
                        ],
                        "package": "linux-meta",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:38:45 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-image-virtual",
                "from_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 6.8.0-41.41",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/dkms-versions -- resync from main package",
                            ""
                        ],
                        "package": "linux-meta",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:38:45 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-libc-dev",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-tools-common",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": null
            },
            {
                "name": "linux-virtual",
                "from_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": "linux-meta",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 6.8.0-41.41",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/dkms-versions -- resync from main package",
                            ""
                        ],
                        "package": "linux-meta",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:38:45 +0200"
                    }
                ],
                "notes": null
            }
        ],
        "snap": []
    },
    "added": {
        "deb": [
            {
                "name": "linux-headers-6.8.0-41",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": "linux-headers-6.8.0-41 version '6.8.0-41.41' (source package linux version '6.8.0-41.41') was added. linux-headers-6.8.0-41 version '6.8.0-41.41' has the same source package name, linux, as removed package linux-headers-6.8.0-40. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            },
            {
                "name": "linux-headers-6.8.0-41-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": "linux-headers-6.8.0-41-generic version '6.8.0-41.41' (source package linux version '6.8.0-41.41') was added. linux-headers-6.8.0-41-generic version '6.8.0-41.41' has the same source package name, linux, as removed package linux-headers-6.8.0-40. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            },
            {
                "name": "linux-image-6.8.0-41-generic",
                "from_version": {
                    "source_package_name": "linux-signed",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux-signed",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [],
                "launchpad_bugs_fixed": [
                    1786013
                ],
                "changes": [
                    {
                        "cves": [],
                        "log": [
                            "",
                            "  * Main version: 6.8.0-41.41",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian/tracking-bug -- resync from main package",
                            ""
                        ],
                        "package": "linux-signed",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            1786013
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:39:01 +0200"
                    }
                ],
                "notes": "linux-image-6.8.0-41-generic version '6.8.0-41.41' (source package linux-signed version '6.8.0-41.41') was added. linux-image-6.8.0-41-generic version '6.8.0-41.41' has the same source package name, linux-signed, as removed package linux-image-6.8.0-40-generic. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            },
            {
                "name": "linux-modules-6.8.0-41-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": "linux-modules-6.8.0-41-generic version '6.8.0-41.41' (source package linux version '6.8.0-41.41') was added. linux-modules-6.8.0-41-generic version '6.8.0-41.41' has the same source package name, linux, as removed package linux-headers-6.8.0-40. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            },
            {
                "name": "linux-tools-6.8.0-41",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": "linux-tools-6.8.0-41 version '6.8.0-41.41' (source package linux version '6.8.0-41.41') was added. linux-tools-6.8.0-41 version '6.8.0-41.41' has the same source package name, linux, as removed package linux-headers-6.8.0-40. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            },
            {
                "name": "linux-tools-6.8.0-41-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": null
                },
                "to_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-41.41",
                    "version": "6.8.0-41.41"
                },
                "cves": [
                    {
                        "cve": "CVE-2024-39484",
                        "url": "https://ubuntu.com/security/CVE-2024-39484",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-07-05 07:15:00 UTC"
                    },
                    {
                        "cve": "CVE-2024-39292",
                        "url": "https://ubuntu.com/security/CVE-2024-39292",
                        "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                        "cve_priority": "medium",
                        "cve_public_date": "2024-06-24 14:15:00 UTC"
                    }
                ],
                "launchpad_bugs_fixed": [
                    2075611,
                    1786013,
                    2075110,
                    2069534
                ],
                "changes": [
                    {
                        "cves": [
                            {
                                "cve": "CVE-2024-39484",
                                "url": "https://ubuntu.com/security/CVE-2024-39484",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved:  mmc: davinci: Don't strip remove function when driver is builtin  Using __exit for the remove function results in the remove callback being discarded with CONFIG_MMC_DAVINCI=y. When such a device gets unbound (e.g. using sysfs or hotplug), the driver is just removed without the cleanup being performed. This results in resource leaks. Fix it by compiling in the remove callback unconditionally.  This also fixes a W=1 modpost warning:  WARNING: modpost: drivers/mmc/host/davinci_mmc: section mismatch in reference: davinci_mmcsd_driver+0x10 (section: .data) -> davinci_mmcsd_remove (section: .exit.text)",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-07-05 07:15:00 UTC"
                            },
                            {
                                "cve": "CVE-2024-39292",
                                "url": "https://ubuntu.com/security/CVE-2024-39292",
                                "cve_description": "In the Linux kernel, the following vulnerability has been resolved: um: Add winch to winch_handlers before registering winch IRQ Registering a winch IRQ is racy, an interrupt may occur before the winch is added to the winch_handlers list. If that happens, register_winch_irq() adds to that list a winch that is scheduled to be (or has already been) freed, causing a panic later in winch_cleanup(). Avoid the race by adding the winch to the winch_handlers list before registering the IRQ, and rolling back if um_request_irq() fails.",
                                "cve_priority": "medium",
                                "cve_public_date": "2024-06-24 14:15:00 UTC"
                            }
                        ],
                        "log": [
                            "",
                            "  * noble/linux: 6.8.0-41.41 -proposed tracker (LP: #2075611)",
                            "",
                            "  * Packaging resync (LP: #1786013)",
                            "    - [Packaging] debian.master/dkms-versions -- update from kernel-versions",
                            "      (main/s2024.07.08)",
                            "",
                            "  * md: nvme over tcp with a striped underlying md raid device leads to data",
                            "    corruption (LP: #2075110)",
                            "    - md/md-bitmap: fix writing non bitmap pages",
                            "",
                            "  * Linux 6.8 fails to boot on ARM64 if any param is more than 146 chars",
                            "    (LP: #2069534)",
                            "    - SAUCE: arm64: v6.8: cmdline param >= 146 chars kills kernel",
                            "",
                            "  * CVE-2024-39484",
                            "    - mmc: davinci: Don't strip remove function when driver is builtin",
                            "",
                            "  * CVE-2024-39292",
                            "    - um: Add winch to winch_handlers before registering winch IRQ",
                            ""
                        ],
                        "package": "linux",
                        "version": "6.8.0-41.41",
                        "urgency": "medium",
                        "distributions": "noble",
                        "launchpad_bugs_fixed": [
                            2075611,
                            1786013,
                            2075110,
                            2069534
                        ],
                        "author": "Manuel Diewald <manuel.diewald@canonical.com>",
                        "date": "Fri, 02 Aug 2024 16:15:19 +0200"
                    }
                ],
                "notes": "linux-tools-6.8.0-41-generic version '6.8.0-41.41' (source package linux version '6.8.0-41.41') was added. linux-tools-6.8.0-41-generic version '6.8.0-41.41' has the same source package name, linux, as removed package linux-headers-6.8.0-40. As such we can use the source package version of the removed package, '6.8.0-40.40', 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."
            }
        ],
        "snap": []
    },
    "removed": {
        "deb": [
            {
                "name": "linux-headers-6.8.0-40",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            },
            {
                "name": "linux-headers-6.8.0-40-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            },
            {
                "name": "linux-image-6.8.0-40-generic",
                "from_version": {
                    "source_package_name": "linux-signed",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            },
            {
                "name": "linux-modules-6.8.0-40-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            },
            {
                "name": "linux-tools-6.8.0-40",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            },
            {
                "name": "linux-tools-6.8.0-40-generic",
                "from_version": {
                    "source_package_name": "linux",
                    "source_package_version": "6.8.0-40.40",
                    "version": "6.8.0-40.40"
                },
                "to_version": {
                    "source_package_name": null,
                    "source_package_version": null,
                    "version": null
                },
                "cves": [],
                "launchpad_bugs_fixed": [],
                "changes": [],
                "notes": null
            }
        ],
        "snap": []
    },
    "notes": "Changelog diff for Ubuntu 24.04 noble image from release image serial 20240809 to 20240821",
    "from_series": "noble",
    "to_series": "noble",
    "from_serial": "20240809",
    "to_serial": "20240821",
    "from_manifest_filename": "release_manifest.previous",
    "to_manifest_filename": "manifest.current"
}