Skip to content

Commit

Permalink
Merge tag 'for-linus-hexagon-6.14-rc1' of git://git.kernel.org/pub/sc…
Browse files Browse the repository at this point in the history
…m/linux/kernel/git/bcain/linux

Pull hexagon updates from Brian Cain:

 - Move kernel prototypes out of uapi header to internal header

 - Fix to address an unbalanced spinlock

 - Miscellaneous patches to fix static checks

 - Update bcain@quicinc.com->brian.cain@oss.qualcomm.com

* tag 'for-linus-hexagon-6.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/bcain/linux:
  MAINTAINERS: Update my email address
  hexagon: Fix unbalanced spinlock in die()
  hexagon: Fix warning comparing pointer to 0
  hexagon: Move kernel prototypes out of uapi/asm/setup.h header
  hexagon: time: Remove redundant null check for resource
  hexagon: fix using plain integer as NULL pointer warning in cmpxchg
  • Loading branch information
Linus Torvalds committed Feb 1, 2025
2 parents 04a3389 + 84d7821 commit 60c828c
Show file tree
Hide file tree
Showing 7 changed files with 31 additions and 18 deletions.
2 changes: 2 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -142,6 +142,8 @@ Boris Brezillon <bbrezillon@kernel.org> <boris.brezillon@bootlin.com>
Boris Brezillon <bbrezillon@kernel.org> <boris.brezillon@free-electrons.com>
Brendan Higgins <brendan.higgins@linux.dev> <brendanhiggins@google.com>
Brian Avery <b.avery@hp.com>
Brian Cain <bcain@kernel.org> <brian.cain@oss.qualcomm.com>
Brian Cain <bcain@kernel.org> <bcain@quicinc.com>
Brian King <brking@us.ibm.com>
Brian Silverman <bsilver16384@gmail.com> <brian.silverman@bluerivertech.com>
Bryan Tan <bryan-bt.tan@broadcom.com> <bryantan@vmware.com>
Expand Down
2 changes: 1 addition & 1 deletion MAINTAINERS
Original file line number Diff line number Diff line change
Expand Up @@ -19453,7 +19453,7 @@ F: drivers/misc/fastrpc.c
F: include/uapi/misc/fastrpc.h

QUALCOMM HEXAGON ARCHITECTURE
M: Brian Cain <bcain@quicinc.com>
M: Brian Cain <brian.cain@oss.qualcomm.com>
L: linux-hexagon@vger.kernel.org
S: Supported
T: git git://git.kernel.org/pub/scm/linux/kernel/git/bcain/linux.git
Expand Down
2 changes: 1 addition & 1 deletion arch/hexagon/include/asm/cmpxchg.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ __arch_xchg(unsigned long x, volatile void *ptr, int size)
__typeof__(ptr) __ptr = (ptr); \
__typeof__(*(ptr)) __old = (old); \
__typeof__(*(ptr)) __new = (new); \
__typeof__(*(ptr)) __oldval = 0; \
__typeof__(*(ptr)) __oldval = (__typeof__(*(ptr))) 0; \
\
asm volatile( \
"1: %0 = memw_locked(%1);\n" \
Expand Down
20 changes: 20 additions & 0 deletions arch/hexagon/include/asm/setup.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/*
* Copyright (c) 2010-2011, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*/

#ifndef _ASM_HEXAGON_SETUP_H
#define _ASM_HEXAGON_SETUP_H

#include <linux/init.h>
#include <uapi/asm/setup.h>

extern char external_cmdline_buffer;

void __init setup_arch_memory(void);

#endif
14 changes: 2 additions & 12 deletions arch/hexagon/include/uapi/asm/setup.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,9 @@
* 02110-1301, USA.
*/

#ifndef _ASM_SETUP_H
#define _ASM_SETUP_H

#ifdef __KERNEL__
#include <linux/init.h>
#else
#define __init
#endif
#ifndef _UAPI_ASM_HEXAGON_SETUP_H
#define _UAPI_ASM_HEXAGON_SETUP_H

#include <asm-generic/setup.h>

extern char external_cmdline_buffer;

void __init setup_arch_memory(void);

#endif
3 changes: 1 addition & 2 deletions arch/hexagon/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -170,8 +170,7 @@ static void __init time_init_deferred(void)

ce_dev->cpumask = cpu_all_mask;

if (!resource)
resource = rtos_timer_device.resource;
resource = rtos_timer_device.resource;

/* ioremap here means this has to run later, after paging init */
rtos_timer = ioremap(resource->start, resource_size(resource));
Expand Down
6 changes: 4 additions & 2 deletions arch/hexagon/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,7 @@ static void do_show_stack(struct task_struct *task, unsigned long *fp,
}

/* Attempt to continue past exception. */
if (0 == newfp) {
if (!newfp) {
struct pt_regs *regs = (struct pt_regs *) (((void *)fp)
+ 8);

Expand Down Expand Up @@ -195,8 +195,10 @@ int die(const char *str, struct pt_regs *regs, long err)
printk(KERN_EMERG "Oops: %s[#%d]:\n", str, ++die.counter);

if (notify_die(DIE_OOPS, str, regs, err, pt_cause(regs), SIGSEGV) ==
NOTIFY_STOP)
NOTIFY_STOP) {
spin_unlock_irq(&die.lock);
return 1;
}

print_modules();
show_regs(regs);
Expand Down

0 comments on commit 60c828c

Please sign in to comment.