From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933859AbcHJSTj (ORCPT ); Wed, 10 Aug 2016 14:19:39 -0400 Received: from mx0b-0016f401.pphosted.com ([67.231.156.173]:33383 "EHLO mx0b-0016f401.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933824AbcHJSTf (ORCPT ); Wed, 10 Aug 2016 14:19:35 -0400 From: Jisheng Zhang To: , , CC: , , Jisheng Zhang Subject: [PATCH 0/3] arm64: put objects into proper sections Date: Wed, 10 Aug 2016 15:19:16 +0800 Message-ID: <1470813559-2917-1-git-send-email-jszhang@marvell.com> X-Mailer: git-send-email 2.8.1 MIME-Version: 1.0 Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-08-10_05:,, signatures=0 X-Proofpoint-Details: rule=outbound_notspam policy=outbound score=0 spamscore=0 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1604210000 definitions=main-1608100080 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series tries to put objects into proper sections to avoid pontential unnecessary DDR traffics: patch1 puts alloc_vectors_page() into .init section. This is a clean up patch. patch2 puts vdso_pages, vdso_spec and vectors_page into read_mostly section, since they are read mostly in hot path. patch3 puts cpu_ops into read_mostly section, since it's read mostly int hot path such as arm_cpuidle_suspend(). Before this series: ffff000008d660f0 b undef_lock ffff000008d660f8 b vectors_page ffff000008d66100 b vdso_pages ffff000008d66108 b vdso_spec ffff000008d66148 B cpu_ops ffff000008d66348 b patch_lock After this series: ffff000008ca5b08 D static_key_initialized ffff000008ca5b10 d vectors_page ffff000008ca5b18 d vdso_pages ffff000008ca5b20 d vdso_spec ffff000008ca5b60 D cpu_ops ffff000008ca5d60 D elf_hwcap ffff000008ca5d68 D compat_elf_hwcap ffff000008ca5d6c D compat_elf_hwcap2 Although there's no obvious issue with current code, because undef_lock and patch_lock is rarely used, but the situation may change in the future, so let's move them into proper sections now. Jisheng Zhang (3): arm64: vdso: add __init section marker to alloc_vectors_page arm64: vdso: put read only/mostly objects into proper sections arm64: kernel: declare cpu_ops __read_mostly arch/arm64/kernel/cpu_ops.c | 2 +- arch/arm64/kernel/vdso.c | 31 +++++++++++++++---------------- 2 files changed, 16 insertions(+), 17 deletions(-) -- 2.8.1