Missing headers, more minor fixes
git-svn-id: https://outreach.scidac.gov/svn/spl/trunk@48 7e1ea52c-4ff2-0310-8f11-9dd32ca42a1c
This commit is contained in:
parent
c19c06f3b0
commit
2bdb28fbe0
|
@ -7,6 +7,7 @@ extern "C" {
|
||||||
|
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
#include <sys/vfs.h>
|
||||||
|
|
||||||
/* XXX - Portions commented out because we really just want to have the type
|
/* XXX - Portions commented out because we really just want to have the type
|
||||||
* defined and the contents aren't nearly so important at the moment. */
|
* defined and the contents aren't nearly so important at the moment. */
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
#ifndef _SPL_MOUNT_H
|
||||||
|
#define _SPL_MOUNT_H
|
||||||
|
|
||||||
|
#endif /* SPL_MOUNT_H */
|
|
@ -0,0 +1,4 @@
|
||||||
|
#ifndef _SPL_SDT_H
|
||||||
|
#define _SPL_SDT_H
|
||||||
|
|
||||||
|
#endif /* SPL_SDT_H */
|
|
@ -1,7 +1,7 @@
|
||||||
#ifndef _SPL_ZFS_H
|
#ifndef _SPL_ZFS_H
|
||||||
#define _SPL_ZFS_H
|
#define _SPL_ZFS_H
|
||||||
|
|
||||||
typedef struct vfs_s {
|
typedef struct vfs {
|
||||||
int foo;
|
int foo;
|
||||||
} vfs_t;
|
} vfs_t;
|
||||||
|
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
#include <linux/mm.h>
|
#include <linux/mm.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
|
#include <asm/uaccess.h>
|
||||||
|
|
||||||
extern vmem_t *zio_alloc_arena; /* arena for zio caches */
|
extern vmem_t *zio_alloc_arena; /* arena for zio caches */
|
||||||
|
|
||||||
|
@ -10,8 +11,45 @@ extern vmem_t *zio_alloc_arena; /* arena for zio caches */
|
||||||
#define ptob(pages) (pages * PAGE_SIZE)
|
#define ptob(pages) (pages * PAGE_SIZE)
|
||||||
#define membar_producer() smp_wmb()
|
#define membar_producer() smp_wmb()
|
||||||
|
|
||||||
#define copyin(from, to, size) copy_from_user(to, from, size)
|
#define xcopyin(from, to, size) copy_from_user(to, from, size)
|
||||||
#define copyout(from, to, size) copy_to_user(to, from, size)
|
#define xcopyout(from, to, size) copy_to_user(to, from, size)
|
||||||
|
|
||||||
|
static __inline__ int
|
||||||
|
copyin(const void *from, void *to, size_t len)
|
||||||
|
{
|
||||||
|
/* On error copyin routine returns -1 */
|
||||||
|
if (xcopyin(from, to, len))
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static __inline__ int
|
||||||
|
copyout(const void *from, void *to, size_t len)
|
||||||
|
{
|
||||||
|
/* On error copyout routine returns -1 */
|
||||||
|
if (xcopyout(from, to, len))
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static __inline__ int
|
||||||
|
copyinstr(const void *from, void *to, size_t len, size_t *done)
|
||||||
|
{
|
||||||
|
if (len == 0)
|
||||||
|
return -ENAMETOOLONG;
|
||||||
|
|
||||||
|
if (len < 0)
|
||||||
|
return -EFAULT;
|
||||||
|
|
||||||
|
/* XXX: Should return ENAMETOOLONG if 'strlen(from) > len' */
|
||||||
|
|
||||||
|
memset(to, 0, len);
|
||||||
|
*done = copyin(from, to, len - 1);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
/* The approximate total number of free pages */
|
/* The approximate total number of free pages */
|
||||||
|
|
Loading…
Reference in New Issue