In the Linux kernel, the following vulnerability has been resolved:
s390/dasd: fix error recovery leading to data corruption on ESE devices
Extent Space Efficient (ESE) or thin provisioned volumes need to be
formatted on demand during usual IO processing.
The dasd_ese_needs_format function checks for error codes that signal
the non existence of a proper track format.
The check for incorrect length is to imprecise since other error cases
leading to transport of insufficient data also have this flag set.
This might lead to data corruption in certain error cases for example
during a storage server warmstart.
Fix by removing the check for incorrect length and replacing by
explicitly checking for invalid track format in transport mode.
Also remove the check for file protected since this is not a valid
ESE handling case.
[
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/s390/block/dasd.c",
"drivers/s390/block/dasd_3990_erp.c",
"drivers/s390/block/dasd_eckd.c",
"drivers/s390/block/dasd_int.h"
],
"versions": [
{
"version": "5e2b17e712cf",
"lessThan": "19f60a55b2fd",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "e245a18281c2",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "a665e3b7ac7d",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "0a228896a1b3",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "93a7e2856951",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "5d4a304338da",
"status": "affected",
"versionType": "git"
},
{
"version": "5e2b17e712cf",
"lessThan": "7db404233658",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"drivers/s390/block/dasd.c",
"drivers/s390/block/dasd_3990_erp.c",
"drivers/s390/block/dasd_eckd.c",
"drivers/s390/block/dasd_int.h"
],
"versions": [
{
"version": "5.3",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.3",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.4.283",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.10.225",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.15.166",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.1.107",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.6.48",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.10.7",
"lessThanOrEqual": "6.10.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.11",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
]
git.kernel.org/stable/c/0a228896a1b3654cd461ff654f6a64e97a9c3246
git.kernel.org/stable/c/19f60a55b2fda49bc4f6134a5f6356ef62ee69d8
git.kernel.org/stable/c/5d4a304338daf83ace2887aaacafd66fe99ed5cc
git.kernel.org/stable/c/7db4042336580dfd75cb5faa82c12cd51098c90b
git.kernel.org/stable/c/93a7e2856951680cd7fe6ebd705ac10c8a8a5efd
git.kernel.org/stable/c/a665e3b7ac7d5cdc26e00e3d0fc8fd490e00316a
git.kernel.org/stable/c/e245a18281c252c8dbc467492e09bb5d4b012118