In the Linux kernel, the following vulnerability has been resolved:
mm: migratedevice: fix ptepfn/pte_dirty called on non-present PTE
ptepfn() and ptedirty() have undefined behaviour when called on a non-present PTE. In migratevmacollectpmd(), these functions may be invoked on non-present entries (e.g., device-private entries), leading to potential crashes from ptepfn() or incorrect dirty folio accounting from ptedirty(). Fix both by guarding with ptepresent() checks.