Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
a98d6920
Commit
a98d6920
authored
Nov 23, 2009
by
Jean-Paul Saman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
define and implement wrong_size_cmpxchg() for arm
parent
52124ad9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
33 additions
and
3 deletions
+33
-3
arch/arm/kernel/Makefile
arch/arm/kernel/Makefile
+1
-1
arch/arm/kernel/cmpxchg-local.c
arch/arm/kernel/cmpxchg-local.c
+30
-0
include/asm-generic/cmpxchg-local.h
include/asm-generic/cmpxchg-local.h
+2
-2
No files found.
arch/arm/kernel/Makefile
View file @
a98d6920
...
...
@@ -15,7 +15,7 @@ CFLAGS_REMOVE_return_address.o = -pg
obj-y
:=
compat.o elf.o entry-armv.o entry-common.o irq.o
\
process.o ptrace.o return_address.o setup.o signal.o
\
sys_arm.o stacktrace.o time.o traps.o
sys_arm.o stacktrace.o time.o traps.o
cmpxchg-local.o
obj-$(CONFIG_ISA_DMA_API)
+=
dma.o
obj-$(CONFIG_ARCH_ACORN)
+=
ecard.o
...
...
arch/arm/kernel/cmpxchg-local.c
0 → 100644
View file @
a98d6920
/*
* arch/arm/kernel/cmpxchg-local.c
*
* Copyright (C) 2009, M2X BV, All Rights Reserved
* Author: Jean-Paul Saman <jean-paul.saman@m2x.nl>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <linux/init.h>
#include <linux/kernel.h>
#include <asm-generic/cmpxchg-local.h>
void
wrong_size_cmpxchg
(
volatile
void
*
ptr
)
{
printk
(
KERN_ERR
"Wrong sized cmpxchg"
);
BUG
();
}
include/asm-generic/cmpxchg-local.h
View file @
a98d6920
...
...
@@ -3,7 +3,7 @@
#include <linux/types.h>
extern
unsigned
long
wrong_size_cmpxchg
(
volatile
void
*
ptr
);
extern
void
wrong_size_cmpxchg
(
volatile
void
*
ptr
);
/*
* Generic version of __cmpxchg_local (disables interrupts). Takes an unsigned
...
...
@@ -12,7 +12,7 @@ extern unsigned long wrong_size_cmpxchg(volatile void *ptr);
static
inline
unsigned
long
__cmpxchg_local_generic
(
volatile
void
*
ptr
,
unsigned
long
old
,
unsigned
long
new
,
int
size
)
{
unsigned
long
flags
,
prev
;
unsigned
long
flags
,
prev
=
0
;
/*
* Sanity checking, compile-time.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment