Changelog in Linux kernel 6.6.71

 
Linux: Linux 6.6.71 [+ + +]
Author: Greg Kroah-Hartman <[email protected]>
Date:   Fri Jan 10 14:31:36 2025 +0100

    Linux 6.6.71
    
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
Revert "x86, crash: wrap crash dumping code into crash related ifdefs" [+ + +]
Author: Greg Kroah-Hartman <[email protected]>
Date:   Fri Jan 10 13:09:11 2025 +0100

    Revert "x86, crash: wrap crash dumping code into crash related ifdefs"
    
    This reverts commit e5b1574a8ca28c40cf53eda43f6c3b016ed41e27 which is
    commit a4eeb2176d89fdf2785851521577b94b31690a60 upstream.
    
    When this change is backported to the 6.6.y tree, it can cause build
    errors on some configurations when KEXEC is not enabled, so revert it
    for now.
    
    Reported-by: Ignat Korchagin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Lars Wendler <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Chris Clayton <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Cc: Al Viro <[email protected]>
    Cc: Andrew Morton <[email protected]>
    Cc: Dexuan Cui <[email protected]>
    Cc: Eric W. Biederman <[email protected]>
    Cc: Hari Bathini <[email protected]>
    Cc: Klara Modin <[email protected]>
    Cc: Michael Kelley <[email protected]>
    Cc: Michael Kelley <[email protected]>
    Cc: Naman Jain <[email protected]>
    Cc: Nathan Chancellor <[email protected]>
    Cc: Pingfan Liu <[email protected]>
    Cc: Sasha Levin <[email protected]>
    Cc: Stephen Rothwell <[email protected]>
    Cc: Wei Liu <[email protected]>
    Cc: Yang Li <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>

 
Revert "x86/hyperv: Fix hv tsc page based sched_clock for hibernation" [+ + +]
Author: Greg Kroah-Hartman <[email protected]>
Date:   Fri Jan 10 13:06:34 2025 +0100

    Revert "x86/hyperv: Fix hv tsc page based sched_clock for hibernation"
    
    This reverts commit 6681113633dc738ec95fe33104843a1e25acef3b which is
    commit bcc80dec91ee745b3d66f3e48f0ec2efdea97149 upstream.
    
    The dependant patch before this one caused build errors in the 6.6.y
    tree, so revert this for now so that we can fix them up properly.
    
    Reported-by: Ignat Korchagin <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Lars Wendler <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Reported-by: Chris Clayton <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Cc: Dexuan Cui <[email protected]>
    Cc: Naman Jain <[email protected]>
    Cc: Michael Kelley <[email protected]>
    Cc: Wei Liu <[email protected]>
    Cc: Sasha Levin <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
 
x86/hyperv: Fix hv tsc page based sched_clock for hibernation [+ + +]
Author: Naman Jain <[email protected]>
Date:   Tue Sep 17 11:09:17 2024 +0530

    x86/hyperv: Fix hv tsc page based sched_clock for hibernation
    
    commit bcc80dec91ee745b3d66f3e48f0ec2efdea97149 upstream.
    
    read_hv_sched_clock_tsc() assumes that the Hyper-V clock counter is
    bigger than the variable hv_sched_clock_offset, which is cached during
    early boot, but depending on the timing this assumption may be false
    when a hibernated VM starts again (the clock counter starts from 0
    again) and is resuming back (Note: hv_init_tsc_clocksource() is not
    called during hibernation/resume); consequently,
    read_hv_sched_clock_tsc() may return a negative integer (which is
    interpreted as a huge positive integer since the return type is u64)
    and new kernel messages are prefixed with huge timestamps before
    read_hv_sched_clock_tsc() grows big enough (which typically takes
    several seconds).
    
    Fix the issue by saving the Hyper-V clock counter just before the
    suspend, and using it to correct the hv_sched_clock_offset in
    resume. This makes hv tsc page based sched_clock continuous and ensures
    that post resume, it starts from where it left off during suspend.
    Override x86_platform.save_sched_clock_state and
    x86_platform.restore_sched_clock_state routines to correct this as soon
    as possible.
    
    Note: if Invariant TSC is available, the issue doesn't happen because
    1) we don't register read_hv_sched_clock_tsc() for sched clock:
    See commit e5313f1c5404 ("clocksource/drivers/hyper-v: Rework
    clocksource and sched clock setup");
    2) the common x86 code adjusts TSC similarly: see
    __restore_processor_state() ->  tsc_verify_tsc_adjust(true) and
    x86_platform.restore_sched_clock_state().
    
    Cc: [email protected]
    Fixes: 1349401ff1aa ("clocksource/drivers/hyper-v: Suspend/resume Hyper-V clocksource for hibernation")
    Co-developed-by: Dexuan Cui <[email protected]>
    Signed-off-by: Dexuan Cui <[email protected]>
    Signed-off-by: Naman Jain <[email protected]>
    Reviewed-by: Michael Kelley <[email protected]>
    Link: https://lore.kernel.org/r/[email protected]
    Signed-off-by: Wei Liu <[email protected]>
    Message-ID: <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>