On 4/3/24 8:16 PM, Sasha Levin wrote: > From: Karina Yankevich <k.yankevich@xxxxxx> > > [ Upstream commit d6429a3555fb29f380c5841a12f5ac3f7444af03 ] > > In sddr55_{read|write}_data(), the address variables are needlessly typed > as *unsigned long* -- which is 32-bit type on the 32-bit arches and 64-bit > type on the 64-bit arches; those variables' value should fit into just 3 > command bytes and consists of 10-bit block # (or at least the max block # > seems to be 1023) and 4-/5-bit page # within a block, so 32-bit *unsigned* > *int* type should be more than enough... > > Found by Linux Verification Center (linuxtesting.org) with the Svace static > analysis tool. > > [Sergey: rewrote the patch subject/description] > > Signed-off-by: Karina Yankevich <k.yankevich@xxxxxx> > Signed-off-by: Sergey Shtylyov <s.shtylyov@xxxxxx> > Reviewed-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> > Link: https://lore.kernel.org/r/4c9485f2-0bfc-591b-bfe7-2059289b554e@xxxxxx > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> [...] I doubt this is worth pulling into the stable kernels, it does not fix any serious issue... MBR, Sergey