RHEL added this unused field by an unknown reason, apparently
brainlessy porting some patch from mainstream.

It looks just as waste of memory, but it is worse, as tools
like drgn interpret its presence as indicator that kernel
works according to rules of that mainstream kernel where that
patch was borrowed from. The result - drgn becomes useless.

We could delete it. But for now it seems more clever to
keep struct 100% binary compatible, only with the field renamed.

Signed-off-by: Alexey Kuznetsov <kuz...@acronis.com>
---
 arch/x86/include/asm/thread_info.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/include/asm/thread_info.h 
b/arch/x86/include/asm/thread_info.h
index eb2256c..6179520 100644
--- a/arch/x86/include/asm/thread_info.h
+++ b/arch/x86/include/asm/thread_info.h
@@ -58,7 +58,7 @@ struct thread_info {
        unsigned long           syscall_work;   /* SYSCALL_WORK_ flags */
        u32                     status;         /* thread synchronous flags */
 #ifdef CONFIG_SMP
-       u32                     cpu;            /* current CPU */
+       u32                     __unused_cpu;   /* current CPU */
 #endif
        int                     preempt_lazy_count;     /* 0 => lazy preemptable
                                                          <0 => BUG */
-- 
1.8.3.1

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to