Skip to contentSkip to conversation

parisc architecture fixes for v6.7-rc3

GIT PULL Merged Helge Deller 2 participants 2 messages Nov 26, 2023

lore
Share & tools
lore
#0 lore raw

Hi Linus,

this patchset fixes and enforces correct section alignments for the ex_table, altinstructions, parisc_unwind, jump_table and bug_table which are created by inline assembly.
Due to not being correctly aligned at link & load time they can trigger unnecessarily the kernel unaligned exception handler at runtime. While at it, I switched the bug table to use relative addresses which reduces the size of the table by half on 64-bit.

We still had the ENOSYM and EREMOTERELEASE errno symbols as left-overs from HP-UX, which now trigger build-issues with glibc. We can simply remove them.

Most of the patches are tagged for stable kernel series.

Please pull.

Thanks!
Helge

----------------------------------------------------------------
The following changes since commit 98b1cc82c4affc16f5598d4fa14b1858671b2263:

Linux 6.7-rc2 (2023-11-19 15:02:14 -0800)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git tags/parisc-for-6.7-rc3

for you to fetch changes up to 43266838515d30dc0c45d5c7e6e7edacee6cce92:

parisc: Reduce size of the bug_table on 64-bit kernel by half (2023-11-25 09:43:18 +0100)

----------------------------------------------------------------
parisc architecture fixes for kernel v6.7-rc3:

- Drop HP-UX ENOSYM and EREMOTERELEASE return codes to avoid glibc build issues
- Fix section alignments for ex_table, altinstructions, parisc unwind table, jump_table and bug_table
- Reduce size of bug_table on 64-bit kernel by using relative pointers

----------------------------------------------------------------
Helge Deller (9):
parisc: Mark ex_table entries 32-bit aligned in assembly.h
parisc: Mark ex_table entries 32-bit aligned in uaccess.h
parisc: Mark altinstructions read-only and 32-bit aligned
parisc: Mark jump_table naturally aligned
parisc: Mark lock_aligned variables 16-byte aligned on SMP
parisc: Ensure 32-bit alignment on parisc unwind section
parisc: Use natural CPU alignment for bug_table
parisc: Drop the HP-UX ENOSYM and EREMOTERELEASE error codes
parisc: Reduce size of the bug_table on 64-bit kernel by half

 arch/parisc/Kconfig                        |  7 ++++--
 arch/parisc/include/asm/alternative.h      |  9 ++++---
 arch/parisc/include/asm/assembly.h         |  1 +
 arch/parisc/include/asm/bug.h              | 38 +++++++++++++++++-------------
 arch/parisc/include/asm/jump_label.h       |  8 +++++--
 arch/parisc/include/asm/ldcw.h             |  2 +-
 arch/parisc/include/asm/uaccess.h          |  1 +
 arch/parisc/include/uapi/asm/errno.h       |  2 --
 arch/parisc/kernel/vmlinux.lds.S           |  1 +
 lib/errname.c                              |  6 -----
 tools/arch/parisc/include/uapi/asm/errno.h |  2 --
 11 files changed, 43 insertions(+), 34 deletions(-)
merge bot Merged
#1 lore raw
The pull request you sent on Sun, 26 Nov 2023 18:04:41 +0100:

The pull request you sent on Sun, 26 Nov 2023 18:04:41 +0100:

Quoted 1 line

git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux.git tags/parisc-for-6.7-rc3

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/d2da77f431ac49b5763b88751a75f70daa46296c

Thank you!

Signature · 2 lines
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html