Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
b1195c0e
Commit
b1195c0e
authored
May 26, 2012
by
James Bottomley
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[PARISC] update parisc to use generic strncpy_from_user()
Signed-off-by:
James Bottomley
<
JBottomley@Parallels.com
>
parent
8275b91a
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
3 additions
and
45 deletions
+3
-45
arch/parisc/Kconfig
arch/parisc/Kconfig
+1
-0
arch/parisc/include/asm/uaccess.h
arch/parisc/include/asm/uaccess.h
+2
-3
arch/parisc/kernel/parisc_ksyms.c
arch/parisc/kernel/parisc_ksyms.c
+0
-1
arch/parisc/lib/lusercopy.S
arch/parisc/lib/lusercopy.S
+0
-41
No files found.
arch/parisc/Kconfig
View file @
b1195c0e
...
...
@@ -18,6 +18,7 @@ config PARISC
select IRQ_PER_CPU
select ARCH_HAVE_NMI_SAFE_CMPXCHG
select GENERIC_SMP_IDLE_THREAD
select GENERIC_STRNCPY_FROM_USER
help
The PA-RISC microprocessor is designed by Hewlett-Packard and used
...
...
arch/parisc/include/asm/uaccess.h
View file @
b1195c0e
...
...
@@ -218,15 +218,14 @@ struct exception_data {
extern
unsigned
long
lcopy_to_user
(
void
__user
*
,
const
void
*
,
unsigned
long
);
extern
unsigned
long
lcopy_from_user
(
void
*
,
const
void
__user
*
,
unsigned
long
);
extern
unsigned
long
lcopy_in_user
(
void
__user
*
,
const
void
__user
*
,
unsigned
long
);
extern
long
l
strncpy_from_user
(
char
*
,
const
char
__user
*
,
long
);
extern
long
strncpy_from_user
(
char
*
,
const
char
__user
*
,
long
);
extern
unsigned
lclear_user
(
void
__user
*
,
unsigned
long
);
extern
long
lstrnlen_user
(
const
char
__user
*
,
long
);
/*
* Complex access routines -- macros
*/
#define user_addr_max() (~0UL)
#define strncpy_from_user lstrncpy_from_user
#define strnlen_user lstrnlen_user
#define strlen_user(str) lstrnlen_user(str, 0x7fffffffL)
#define clear_user lclear_user
...
...
arch/parisc/kernel/parisc_ksyms.c
View file @
b1195c0e
...
...
@@ -44,7 +44,6 @@ EXPORT_SYMBOL(__cmpxchg_u64);
#endif
#include <asm/uaccess.h>
EXPORT_SYMBOL
(
lstrncpy_from_user
);
EXPORT_SYMBOL
(
lclear_user
);
EXPORT_SYMBOL
(
lstrnlen_user
);
...
...
arch/parisc/lib/lusercopy.S
View file @
b1195c0e
...
...
@@ -60,47 +60,6 @@
bv
%
r0
(%
r1
)
.
endm
/
*
*
long
lstrncpy_from_user
(
char
*
dst
,
const
char
*
src
,
long
n
)
*
*
Returns
-
EFAULT
if
exception
before
terminator
,
*
N
if
the
entire
buffer
filled
,
*
otherwise
strlen
(
i
.
e
.
excludes
zero
byte
)
*/
ENTRY
(
lstrncpy_from_user
)
.
proc
.
callinfo
NO_CALLS
.
entry
comib
,
=
0
,%
r24
,
$lsfu_done
copy
%
r24
,%
r23
get_sr
1
:
ldbs
,
ma
1
(%
sr1
,%
r25
),%
r1
$lsfu_loop
:
stbs
,
ma
%
r1
,
1
(%
r26
)
comib
,=,
n
0
,%
r1
,
$lsfu_done
addib
,<>,
n
-
1
,%
r24
,
$lsfu_loop
2
:
ldbs
,
ma
1
(%
sr1
,%
r25
),%
r1
$lsfu_done
:
sub
%
r23
,%
r24
,%
r28
$lsfu_exit
:
bv
%
r0
(%
r2
)
nop
.
exit
ENDPROC
(
lstrncpy_from_user
)
.
section
.
fixup
,
"ax"
3
:
fixup_branch
$lsfu_exit
ldi
-
EFAULT
,%
r28
.
previous
.
section
__ex_table
,
"aw"
ASM_ULONG_INSN
1
b
,
3
b
ASM_ULONG_INSN
2
b
,
3
b
.
previous
.
procend
/
*
*
unsigned
long
lclear_user
(
void
*
to
,
unsigned
long
n
)
*
...
...
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