Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Typedefs | Functions
memcpy_tile64.c File Reference
#include <linux/string.h>
#include <linux/smp.h>
#include <linux/module.h>
#include <linux/uaccess.h>
#include <asm/fixmap.h>
#include <asm/kmap_types.h>
#include <asm/tlbflush.h>
#include <hv/hypervisor.h>
#include <arch/chip.h>

Go to the source code of this file.

Macros

#define LARGE_COPY_CUTOFF   2048
 
#define sim_allow_multiple_caching(b)
 

Typedefs

typedef unsigned long(* memcpy_t )(void *, const void *, unsigned long)
 

Functions

unsigned long __memcpy_asm (void *to, const void *from, unsigned long n)
 
unsigned long __copy_to_user_inatomic_asm (void __user *to, const void *from, unsigned long n)
 
unsigned long __copy_from_user_inatomic_asm (void *to, const void __user *from, unsigned long n)
 
unsigned long __copy_from_user_zeroing_asm (void *to, const void __user *from, unsigned long n)
 
voidmemcpy (void *to, const void *from, __kernel_size_t n)
 
unsigned long __copy_to_user_inatomic (void __user *to, const void *from, unsigned long n)
 
unsigned long __copy_from_user_inatomic (void *to, const void __user *from, unsigned long n)
 
unsigned long __copy_from_user_zeroing (void *to, const void __user *from, unsigned long n)
 

Macro Definition Documentation

#define LARGE_COPY_CUTOFF   2048

Definition at line 40 of file memcpy_tile64.c.

#define sim_allow_multiple_caching (   b)
Value:

Definition at line 43 of file memcpy_tile64.c.

Typedef Documentation

typedef unsigned long(* memcpy_t)(void *, const void *, unsigned long)

Definition at line 37 of file memcpy_tile64.c.

Function Documentation

unsigned long __copy_from_user_inatomic ( void to,
const void __user from,
unsigned long  n 
)

__copy_from_user() - copy data from user space, with less checking. : Destination address, in kernel space. : Source address, in user space.
: Number of bytes to copy.

Context: User context only. This function may sleep.

Copy data from user space to kernel space. Caller must check the specified block with access_ok() before calling this function.

Returns number of bytes that could not be copied. On success, this will be zero.

If some data could not be copied, this function will pad the copied data to the requested size using zero bytes.

An alternate version - __copy_from_user_inatomic() - is designed to be called from atomic context, typically bracketed by calls to pagefault_disable() and pagefault_enable(). This version does NOT pad with zeros.

Definition at line 258 of file memcpy_tile64.c.

unsigned long __copy_from_user_inatomic_asm ( void to,
const void __user from,
unsigned long  n 
)
unsigned long __copy_from_user_zeroing ( void to,
const void __user from,
unsigned long  n 
)

Definition at line 267 of file memcpy_tile64.c.

unsigned long __copy_from_user_zeroing_asm ( void to,
const void __user from,
unsigned long  n 
)
unsigned long __copy_to_user_inatomic ( void __user to,
const void from,
unsigned long  n 
)

__copy_to_user() - copy data into user space, with less checking. : Destination address, in user space. : Source address, in kernel space.
: Number of bytes to copy.

Context: User context only. This function may sleep.

Copy data from kernel space to user space. Caller must check the specified block with access_ok() before calling this function.

Returns number of bytes that could not be copied. On success, this will be zero.

An alternate version - __copy_to_user_inatomic() - is designed to be called from atomic context, typically bracketed by calls to pagefault_disable() and pagefault_enable().

Definition at line 249 of file memcpy_tile64.c.

unsigned long __copy_to_user_inatomic_asm ( void __user to,
const void from,
unsigned long  n 
)
unsigned long __memcpy_asm ( void to,
const void from,
unsigned long  n 
)
void* memcpy ( void to,
const void from,
__kernel_size_t  n 
)

Definition at line 241 of file memcpy_tile64.c.