lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1329789966-693-1-git-send-email-kjwinchester@gmail.com>
Date:	Mon, 20 Feb 2012 22:06:01 -0400
From:	Kevin Winchester <kjwinchester@...il.com>
To:	Ingo Molnar <mingo@...e.hu>
Cc:	Kevin Winchester <kjwinchester@...il.com>,
	"H. Peter Anvin" <hpa@...or.com>,
	Thomas Gleixner <tglx@...utronix.de>,
	Borislav Petkov <bp@...en8.de>,
	Randy Dunlap <rdunlap@...otime.net>,
	Nick Bowler <nbowler@...iptictech.com>,
	linux-kernel@...r.kernel.org
Subject: [PATCH 0/5] x86: Cleanup and simplify cpu-specific data

Various per-cpu fields are define in arch/x86/kernel/smpboot.c that are
basically equivalent to the cpu-specific data in struct cpuinfo_x86.
By moving these fields into the structure, a number of codepaths can be
simplified since they no longer need to care about those fields not
existing on !SMP builds.

The size effects on allno (UP) and allyes (MAX_SMP) kernels are as
follows:

   text	   	data	    	bss	    	dec	    	hex	filename
1586721	 	304864	 	506208		2397793	 	249661	vmlinux.allno
1588517	 	304928	 	505920		2399365	 	249c85	vmlinux.allno.after
84706053	13212311	42434560	140352924	85d9d9c	vmlinux.allyes
84705333	13213799	42434560	140353692	85da09c	vmlinux.allyes.afte

As can be seen, the kernels get slighly larger, but the code reduction/
simplification should be enough to compensate for it.

Kevin Winchester (5):
  x86: Move per cpu cpu_llc_shared_map to a field in struct cpuinfo_x86
  x86: Move per cpu cpu_llc_id to a field in struct cpuinfo_x86
  x86: Move per cpu cpu_sibling_map to a field in struct cpuinfo_x86
  x86: Move per cpu cpu_core_map to a field in struct cpuinfo_x86
  x86: Remove #ifdef CONFIG_SMP sections by moving smp_num_siblings
    into common.c

 arch/x86/include/asm/perf_event_p4.h  |    9 +--
 arch/x86/include/asm/processor.h      |    7 +++
 arch/x86/include/asm/smp.h            |   26 +---------
 arch/x86/include/asm/topology.h       |   10 ++--
 arch/x86/kernel/apic/apic_numachip.c  |    2 +-
 arch/x86/kernel/cpu/amd.c             |   18 ++-----
 arch/x86/kernel/cpu/common.c          |    7 ++-
 arch/x86/kernel/cpu/intel_cacheinfo.c |   19 ++-----
 arch/x86/kernel/cpu/mcheck/mce_amd.c  |    7 ++-
 arch/x86/kernel/cpu/proc.c            |    8 +--
 arch/x86/kernel/cpu/topology.c        |    2 -
 arch/x86/kernel/process.c             |    3 +-
 arch/x86/kernel/smpboot.c             |   95 +++++++++++++--------------------
 arch/x86/oprofile/nmi_int.c           |    6 --
 arch/x86/oprofile/op_model_p4.c       |   11 +----
 arch/x86/xen/smp.c                    |    6 --
 drivers/cpufreq/acpi-cpufreq.c        |    2 +-
 drivers/cpufreq/p4-clockmod.c         |    4 +-
 drivers/cpufreq/powernow-k8.c         |   13 +----
 drivers/cpufreq/speedstep-ich.c       |    6 +-
 drivers/hwmon/coretemp.c              |    6 +--
 21 files changed, 86 insertions(+), 181 deletions(-)

-- 
1.7.9

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ