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
9723d95d
Commit
9723d95d
authored
Jun 21, 2005
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge
rsync://rsync.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
parents
4a4f8fdb
7049e680
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
38 additions
and
2 deletions
+38
-2
arch/sparc64/solaris/socket.c
arch/sparc64/solaris/socket.c
+4
-2
include/asm-sparc64/processor.h
include/asm-sparc64/processor.h
+34
-0
No files found.
arch/sparc64/solaris/socket.c
View file @
9723d95d
...
@@ -317,8 +317,10 @@ asmlinkage int solaris_sendmsg(int fd, struct sol_nmsghdr __user *user_msg, unsi
...
@@ -317,8 +317,10 @@ asmlinkage int solaris_sendmsg(int fd, struct sol_nmsghdr __user *user_msg, unsi
unsigned
long
*
kcmsg
;
unsigned
long
*
kcmsg
;
compat_size_t
cmlen
;
compat_size_t
cmlen
;
if
(
kern_msg
.
msg_controllen
>
sizeof
(
ctl
)
&&
if
(
kern_msg
.
msg_controllen
<=
sizeof
(
compat_size_t
))
kern_msg
.
msg_controllen
<=
256
)
{
return
-
EINVAL
;
if
(
kern_msg
.
msg_controllen
>
sizeof
(
ctl
))
{
err
=
-
ENOBUFS
;
err
=
-
ENOBUFS
;
ctl_buf
=
kmalloc
(
kern_msg
.
msg_controllen
,
GFP_KERNEL
);
ctl_buf
=
kmalloc
(
kern_msg
.
msg_controllen
,
GFP_KERNEL
);
if
(
!
ctl_buf
)
if
(
!
ctl_buf
)
...
...
include/asm-sparc64/processor.h
View file @
9723d95d
...
@@ -192,6 +192,40 @@ extern unsigned long get_wchan(struct task_struct *task);
...
@@ -192,6 +192,40 @@ extern unsigned long get_wchan(struct task_struct *task);
#define cpu_relax() barrier()
#define cpu_relax() barrier()
/* Prefetch support. This is tuned for UltraSPARC-III and later.
* UltraSPARC-I will treat these as nops, and UltraSPARC-II has
* a shallower prefetch queue than later chips.
*/
#define ARCH_HAS_PREFETCH
#define ARCH_HAS_PREFETCHW
#define ARCH_HAS_SPINLOCK_PREFETCH
static
inline
void
prefetch
(
const
void
*
x
)
{
/* We do not use the read prefetch mnemonic because that
* prefetches into the prefetch-cache which only is accessible
* by floating point operations in UltraSPARC-III and later.
* By contrast, "#one_write" prefetches into the L2 cache
* in shared state.
*/
__asm__
__volatile__
(
"prefetch [%0], #one_write"
:
/* no outputs */
:
"r"
(
x
));
}
static
inline
void
prefetchw
(
const
void
*
x
)
{
/* The most optimal prefetch to use for writes is
* "#n_writes". This brings the cacheline into the
* L2 cache in "owned" state.
*/
__asm__
__volatile__
(
"prefetch [%0], #n_writes"
:
/* no outputs */
:
"r"
(
x
));
}
#define spin_lock_prefetch(x) prefetchw(x)
#endif
/* !(__ASSEMBLY__) */
#endif
/* !(__ASSEMBLY__) */
#endif
/* !(__ASM_SPARC64_PROCESSOR_H) */
#endif
/* !(__ASM_SPARC64_PROCESSOR_H) */
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