Skip to content
  • Sasha Levin's avatar
    42efb098
    stable: clamp SUBLEVEL in 4.4 and 4.9 · 42efb098
    Sasha Levin authored
    
    
    Right now SUBLEVEL is overflowing, and some userspace may start treating
    4.9.256 as 4.10. While out of tree modules have different ways of
      extracting the version number (and we're generally ok with breaking
    them), we do care about breaking userspace and it would appear that this
    overflow might do just that.
    
    Our rules around userspace ABI in the stable kernel are pretty simple:
    we don't break it. Thus, while userspace may be checking major/minor, it
    shouldn't be doing anything with sublevel.
    
    This patch applies a big band-aid to the 4.9 and 4.4 kernels in the form
    of clamping their sublevel to 255.
    
    The clamp is done for the purpose of LINUX_VERSION_CODE only, and
    extracting the version number from the Makefile or "make kernelversion"
    will continue to work as intended.
    
    We might need to do it later in newer trees, but maybe we'll have a
    better solution by then, so I'm ignoring that problem for now.
    
    Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    42efb098
    stable: clamp SUBLEVEL in 4.4 and 4.9
    Sasha Levin authored
    
    
    Right now SUBLEVEL is overflowing, and some userspace may start treating
    4.9.256 as 4.10. While out of tree modules have different ways of
      extracting the version number (and we're generally ok with breaking
    them), we do care about breaking userspace and it would appear that this
    overflow might do just that.
    
    Our rules around userspace ABI in the stable kernel are pretty simple:
    we don't break it. Thus, while userspace may be checking major/minor, it
    shouldn't be doing anything with sublevel.
    
    This patch applies a big band-aid to the 4.9 and 4.4 kernels in the form
    of clamping their sublevel to 255.
    
    The clamp is done for the purpose of LINUX_VERSION_CODE only, and
    extracting the version number from the Makefile or "make kernelversion"
    will continue to work as intended.
    
    We might need to do it later in newer trees, but maybe we'll have a
    better solution by then, so I'm ignoring that problem for now.
    
    Signed-off-by: default avatarSasha Levin <sashal@kernel.org>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Loading