Use strong alias within the kernel namespace regardless of if we're

dealing with a hard or soft kernel (kernel linker doesn't support
weak symbols).
This commit is contained in:
pooka 2009-11-26 07:40:34 +00:00
parent 3c809c1925
commit 043ef3bc71
2 changed files with 14 additions and 6 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: atomic.S,v 1.17 2009/04/02 00:19:02 enami Exp $ */
/* $NetBSD: atomic.S,v 1.18 2009/11/26 07:40:34 pooka Exp $ */
/*-
* Copyright (c) 2007 The NetBSD Foundation, Inc.
@ -32,13 +32,17 @@
#include <sys/param.h>
#include <machine/asm.h>
#ifdef _KERNEL
#define ALIAS(f, t) STRONG_ALIAS(f,t)
#else
#define ALIAS(f, t) WEAK_ALIAS(f,t)
#endif
#ifdef _HARDKERNEL
#define LOCK(n) .Lpatch/**/n: lock
#define ALIAS(f, t) STRONG_ALIAS(f,t)
#define ENDLABEL(a) _ALIGN_TEXT; LABEL(a)
#else
#define LOCK(n) lock
#define ALIAS(f, t) WEAK_ALIAS(f,t)
#define ENDLABEL(a) /* nothing */
#endif

View File

@ -1,4 +1,4 @@
/* $NetBSD: atomic.S,v 1.14 2009/01/12 02:53:29 pooka Exp $ */
/* $NetBSD: atomic.S,v 1.15 2009/11/26 07:40:34 pooka Exp $ */
/*-
* Copyright (c) 2007 The NetBSD Foundation, Inc.
@ -32,13 +32,17 @@
#include <sys/param.h>
#include <machine/asm.h>
#ifdef _KERNEL
#define ALIAS(f, t) STRONG_ALIAS(f,t)
#else
#define ALIAS(f, t) WEAK_ALIAS(f,t)
#endif
#ifdef _HARDKERNEL
#define LOCK(n) .Lpatch/**/n: lock
#define ALIAS(f, t) STRONG_ALIAS(f,t)
#define ENDLABEL(a) _ALIGN_TEXT; LABEL(a)
#else
#define LOCK(n) lock
#define ALIAS(f, t) WEAK_ALIAS(f,t)
#define ENDLABEL(a) /* nothing */
#endif