Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

osf_sys.c File Reference

#include <linux/errno.h>
#include <linux/sched.h>
#include <linux/kernel.h>
#include <linux/mm.h>
#include <linux/smp.h>
#include <linux/smp_lock.h>
#include <linux/stddef.h>
#include <linux/unistd.h>
#include <linux/ptrace.h>
#include <linux/malloc.h>
#include <linux/user.h>
#include <linux/a.out.h>
#include <linux/utsname.h>
#include <linux/time.h>
#include <linux/timex.h>
#include <linux/major.h>
#include <linux/stat.h>
#include <linux/mman.h>
#include <linux/shm.h>
#include <linux/poll.h>
#include <linux/file.h>
#include <asm/fpu.h>
#include <asm/io.h>
#include <asm/uaccess.h>
#include <asm/system.h>
#include <asm/sysinfo.h>
#include <asm/hwrpb.h>

Include dependency graph for osf_sys.c:

Go to the source code of this file.

Defines

#define NAME_OFFSET(de)   ((int) ((de)->d_name - (char *) (de)))
#define ROUND_UP(x)   (((x)+3) & ~3)
#define PLE_PROPAGATE_ON_COPY   0x1
#define PLE_FLAG_MASK   0x1
#define PLE_FLAG_ALL   -1
#define MAX_SELECT_SECONDS   ((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1)

Enumerations

enum  pl_code {
  PL_SET = 1, PL_FSET = 2, PL_GET = 3, PL_FGET = 4,
  PL_DEL = 5, PL_FDEL = 6
}

Functions

int do_mount (kdev_t, const char *, const char *, char *, int, void *)
int do_pipe (int *)
file_operations * get_blkfops (unsigned int)
file_operations * get_chrfops (unsigned int)
kdev_t get_unnamed_dev (void)
void put_unnamed_dev (kdev_t)
asmlinkage int sys_swapon (const char *specialfile, int swap_flags)
asmlinkage unsigned long sys_brk (unsigned long)
asmlinkage unsigned long osf_brk (unsigned long brk)
asmlinkage int osf_set_program_attributes (unsigned long text_start, unsigned long text_len, unsigned long bss_start, unsigned long bss_len)
static int osf_filldir (void *__buf, const char *name, int namlen, off_t offset, ino_t ino)
asmlinkage int osf_getdirentries (unsigned int fd, struct osf_dirent *dirent, unsigned int count, long *basep)
asmlinkage int osf_getpriority (int which, int who, int a2, int a3, int a4, int a5, struct pt_regs regs)
asmlinkage unsigned long sys_madvise (void)
asmlinkage unsigned long sys_getxuid (int a0, int a1, int a2, int a3, int a4, int a5, struct pt_regs regs)
asmlinkage unsigned long sys_getxgid (int a0, int a1, int a2, int a3, int a4, int a5, struct pt_regs regs)
asmlinkage unsigned long sys_getxpid (int a0, int a1, int a2, int a3, int a4, int a5, struct pt_regs regs)
asmlinkage unsigned long osf_mmap (unsigned long addr, unsigned long len, unsigned long prot, unsigned long flags, unsigned long fd, unsigned long off)
static int linux_to_osf_statfs (struct statfs *linux_stat, struct osf_statfs *osf_stat, unsigned long bufsiz)
static int do_osf_statfs (struct dentry *dentry, struct osf_statfs *buffer, unsigned long bufsiz)
asmlinkage int osf_statfs (char *path, struct osf_statfs *buffer, unsigned long bufsiz)
asmlinkage int osf_fstatfs (unsigned long fd, struct osf_statfs *buffer, unsigned long bufsiz)
static int getdev (const char *name, int rdonly, struct dentry **dp)
static void putdev (struct dentry *dentry)
static int osf_ufs_mount (char *dirname, struct ufs_args *args, int flags)
static int osf_cdfs_mount (char *dirname, struct cdfs_args *args, int flags)
static int osf_procfs_mount (char *dirname, struct procfs_args *args, int flags)
asmlinkage int osf_mount (unsigned long typenr, char *path, int flag, void *data)
asmlinkage int osf_utsname (char *name)
asmlinkage int osf_swapon (const char *path, int flags, int lowat, int hiwat)
asmlinkage unsigned long sys_getpagesize (void)
asmlinkage unsigned long sys_getdtablesize (void)
asmlinkage int sys_pipe (int a0, int a1, int a2, int a3, int a4, int a5, struct pt_regs regs)
asmlinkage int osf_getdomainname (char *name, int namelen)
asmlinkage long osf_shmat (int shmid, void *shmaddr, int shmflg)
asmlinkage long osf_proplist_syscall (enum pl_code code, union pl_args *args)
asmlinkage int osf_sigstack (struct sigstack *uss, struct sigstack *uoss)
asmlinkage unsigned long alpha_create_module (char *module_name, unsigned long size, int a3, int a4, int a5, int a6, struct pt_regs regs)
asmlinkage long osf_sysinfo (int command, char *buf, long count)
asmlinkage unsigned long osf_getsysinfo (unsigned long op, void *buffer, unsigned long nbytes, int *start, void *arg)
asmlinkage unsigned long osf_setsysinfo (unsigned long op, void *buffer, unsigned long nbytes, int *start, void *arg)
int do_sys_settimeofday (struct timeval *tv, struct timezone *tz)
int do_getitimer (int which, struct itimerval *value)
int do_setitimer (int which, struct itimerval *, struct itimerval *)
asmlinkage int sys_utimes (char *, struct timeval *)
int sys_wait4 (pid_t, int *, int, struct rusage *)
int do_adjtimex (struct timex *)
static long get_tv32 (struct timeval *o, struct timeval32 *i)
static long put_tv32 (struct timeval32 *o, struct timeval *i)
static long get_it32 (struct itimerval *o, struct itimerval32 *i)
static long put_it32 (struct itimerval32 *o, struct itimerval *i)
asmlinkage int osf_gettimeofday (struct timeval32 *tv, struct timezone *tz)
asmlinkage int osf_settimeofday (struct timeval32 *tv, struct timezone *tz)
asmlinkage int osf_getitimer (int which, struct itimerval32 *it)
asmlinkage int osf_setitimer (int which, struct itimerval32 *in, struct itimerval32 *out)
asmlinkage int osf_utimes (const char *filename, struct timeval32 *tvs)
asmlinkage int osf_select (int n, fd_set *inp, fd_set *outp, fd_set *exp, struct timeval32 *tvp)
asmlinkage int osf_getrusage (int who, struct rusage32 *ru)
asmlinkage int osf_wait4 (pid_t pid, int *ustatus, int options, struct rusage32 *ur)
asmlinkage int osf_usleep_thread (struct timeval32 *sleep, struct timeval32 *remain)
asmlinkage int sys_old_adjtimex (struct timex32 *txc_p)

Variables

osf_statfsosf_stat
timezone sys_tz


Define Documentation

#define MAX_SELECT_SECONDS   ((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1)
 

Definition at line 1160 of file osf_sys.c.

Referenced by osf_select(), sys32_select(), and sys_select().

#define NAME_OFFSET de   )     ((int) ((de)->d_name - (char *) (de)))
 

Definition at line 96 of file osf_sys.c.

Referenced by filldir(), FPGA_Download(), osf_filldir(), sunos_filldir(), and sunos_filldirentry().

#define PLE_FLAG_ALL   -1
 

Definition at line 670 of file osf_sys.c.

#define PLE_FLAG_MASK   0x1
 

Definition at line 669 of file osf_sys.c.

#define PLE_PROPAGATE_ON_COPY   0x1
 

Definition at line 667 of file osf_sys.c.

#define ROUND_UP x   )     (((x)+3) & ~3)
 

Definition at line 97 of file osf_sys.c.

Referenced by filldir(), osf_filldir(), smb_send_trans2(), sunos_filldir(), sunos_filldirentry(), and sys_select().


Enumeration Type Documentation

enum pl_code
 

Enumeration values:
PL_SET 
PL_FSET 
PL_GET 
PL_FGET 
PL_DEL 
PL_FDEL 

Definition at line 716 of file osf_sys.c.


Function Documentation

asmlinkage unsigned long alpha_create_module char *  module_name,
unsigned long  size,
int  a3,
int  a4,
int  a5,
int  a6,
struct pt_regs  regs
 

Definition at line 814 of file osf_sys.c.

References asmlinkage, lock_kernel, out, pt_regs::r0, sys_create_module, and unlock_kernel.

int do_adjtimex struct timex  ) 
 

Definition at line 229 of file kernel/time.c.

Referenced by sys32_adjtimex(), sys_adjtimex(), and sys_old_adjtimex().

int do_getitimer int  which,
struct itimerval value
 

Definition at line 43 of file itimer.c.

Referenced by do_setitimer(), osf_getitimer(), sys32_getitimer(), and sys_getitimer().

int do_mount kdev_t  ,
const char *  ,
const char *  ,
char *  ,
int  ,
void * 
 

Referenced by osf_cdfs_mount(), osf_procfs_mount(), osf_ufs_mount(), sunos_nfs_mount(), and sys_mount().

static int do_osf_statfs struct dentry *  dentry,
struct osf_statfs buffer,
unsigned long  bufsiz
[static]
 

Definition at line 318 of file osf_sys.c.

References ENODEV, error, KERNEL_DS, linux_to_osf_statfs(), set_fs, and USER_DS.

Referenced by osf_fstatfs(), and osf_statfs().

Here is the call graph for this function:

int do_pipe int *   ) 
 

Definition at line 469 of file pipe.c.

References d_alloc_root(), ENFILE, ENOMEM, error, f1, f2, fd_install(), file, free_page, get_empty_filp(), get_pipe_inode(), get_unused_fd(), i, iput(), j, O_RDONLY, O_WRONLY, PIPE_BASE, put_filp(), and put_unused_fd().

Referenced by sparc_pipe(), and sys_pipe().

Here is the call graph for this function:

int do_setitimer int  which,
struct itimerval ,
struct itimerval
 

Definition at line 107 of file itimer.c.

Referenced by irix_alarm(), osf_setitimer(), sys32_setitimer(), and sys_setitimer().

int do_sys_settimeofday struct timeval tv,
struct timezone tz
 

Definition at line 165 of file kernel/time.c.

Referenced by __initfunc(), osf_settimeofday(), sys32_settimeofday(), and sys_settimeofday().

struct file_operations* get_blkfops unsigned  int  ) 
 

Definition at line 111 of file fs/devices.c.

Referenced by blkdev_open(), blkdev_release(), getdev(), isofs_get_last_session(), putdev(), and sys_mount().

struct file_operations* get_chrfops unsigned  int  ) 
 

Referenced by chrdev_open().

static long get_it32 struct itimerval o,
struct itimerval32 i
[inline, static]
 

Definition at line 1048 of file osf_sys.c.

References __get_user, access_ok, itimerval::it_interval, itimerval::it_value, timeval::tv_sec, timeval::tv_usec, and VERIFY_READ.

Referenced by osf_setitimer(), and sys32_setitimer().

static long get_tv32 struct timeval o,
struct timeval32 i
[inline, static]
 

Definition at line 1034 of file osf_sys.c.

References __get_user, access_ok, timeval::tv_sec, timeval::tv_usec, and VERIFY_READ.

Referenced by osf_settimeofday(), osf_usleep_thread(), osf_utimes(), sys32_settimeofday(), and sys32_utimes().

kdev_t get_unnamed_dev void   ) 
 

Definition at line 594 of file super.c.

Referenced by mount_root(), osf_procfs_mount(), sunos_nfs_mount(), and sys_mount().

static int getdev const char *  name,
int  rdonly,
struct dentry **  dp
[static]
 

Definition at line 399 of file osf_sys.c.

References dev, dput(), EACCES, ENODEV, ENOTBLK, ENXIO, file, get_blkfops(), IS_NODEV, MAJOR, MAX_BLKDEV, memset, out, and S_ISBLK.

Referenced by osf_cdfs_mount(), and osf_ufs_mount().

Here is the call graph for this function:

static int linux_to_osf_statfs struct statfs linux_stat,
struct osf_statfs osf_stat,
unsigned long  bufsiz
[static]
 

Definition at line 298 of file osf_sys.c.

References copy_to_user, EFAULT, statfs::f_bavail, osf_statfs::f_bavail, statfs::f_bfree, osf_statfs::f_bfree, statfs::f_blocks, osf_statfs::f_blocks, osf_statfs::f_bsize, statfs::f_bsize, statfs::f_ffree, osf_statfs::f_ffree, statfs::f_files, osf_statfs::f_files, osf_statfs::f_flags, statfs::f_fsid, osf_statfs::f_fsid, osf_statfs::f_fsize, statfs::f_type, and osf_statfs::f_type.

Referenced by do_osf_statfs().

asmlinkage unsigned long osf_brk unsigned long  brk  ) 
 

Definition at line 60 of file osf_sys.c.

References ENOMEM, and sys_brk().

Here is the call graph for this function:

static int osf_cdfs_mount char *  dirname,
struct cdfs_args args,
int  flags
[static]
 

Definition at line 485 of file osf_sys.c.

References copy_from_user, do_mount(), dput(), EFAULT, getdev(), NULL, out, and putdev().

Referenced by osf_mount().

Here is the call graph for this function:

static int osf_filldir void *  __buf,
const char *  name,
int  namlen,
off_t  offset,
ino_t  ino
[static]
 

Definition at line 113 of file osf_sys.c.

References osf_dirent_callback::basep, buf, copy_to_user, osf_dirent_callback::count, osf_dirent::d_ino, osf_dirent::d_name, osf_dirent::d_namlen, osf_dirent::d_reclen, osf_dirent_callback::dirent, EINVAL, osf_dirent_callback::error, NAME_OFFSET, NULL, put_user, and ROUND_UP.

Referenced by osf_getdirentries().

asmlinkage int osf_fstatfs unsigned long  fd,
struct osf_statfs buffer,
unsigned long  bufsiz
 

Definition at line 352 of file osf_sys.c.

References do_osf_statfs(), EBADF, fget(), file, fput(), lock_kernel, out, and unlock_kernel.

Here is the call graph for this function:

asmlinkage int osf_getdirentries unsigned int  fd,
struct osf_dirent dirent,
unsigned int  count,
long basep
 

Definition at line 138 of file osf_sys.c.

References osf_dirent_callback::basep, osf_dirent_callback::count, osf_dirent_callback::dirent, down(), EBADF, ENOTDIR, osf_dirent_callback::error, error, fget(), file, fput(), lock_kernel, osf_filldir(), out, unlock_kernel, and up.

Here is the call graph for this function:

asmlinkage int osf_getdomainname char *  name,
int  namelen
 

Definition at line 610 of file osf_sys.c.

References __put_user, new_utsname::domainname, down(), error, i, len, lock_kernel, out, system_utsname, unlock_kernel, up, uts_sem, verify_area(), and VERIFY_WRITE.

Here is the call graph for this function:

asmlinkage int osf_getitimer int  which,
struct itimerval32 it
 

Definition at line 1098 of file osf_sys.c.

References do_getitimer(), EFAULT, error, and put_it32().

Here is the call graph for this function:

asmlinkage int osf_getpriority int  which,
int  who,
int  a2,
int  a3,
int  a4,
int  a5,
struct pt_regs  regs
 

Definition at line 190 of file osf_sys.c.

References pt_regs::r0, and sys_getpriority.

asmlinkage int osf_getrusage int  who,
struct rusage32 ru
 

Definition at line 1263 of file osf_sys.c.

References copy_to_user, CT_TO_SECS, CT_TO_USECS, current, EFAULT, EINVAL, memset, RUSAGE_CHILDREN, and RUSAGE_SELF.

asmlinkage unsigned long osf_getsysinfo unsigned long  op,
void *  buffer,
unsigned long  nbytes,
int *  start,
void *  arg
 

Definition at line 879 of file osf_sys.c.

References copy_to_user, cpu, current, EFAULT, EINVAL, EOPNOTSUPP, GSI_GET_HWRPB, GSI_IEEE_FP_CONTROL, GSI_IEEE_STATE_AT_SIGNAL, GSI_PROC_TYPE, GSI_UACPROC, hwrpb, IEEE_SW_MASK, hwrpb_struct::processor_offset, put_user, percpu_struct::type, UAC_BITMASK, and w.

asmlinkage int osf_gettimeofday struct timeval32 tv,
struct timezone tz
 

Definition at line 1066 of file osf_sys.c.

References copy_to_user, do_gettimeofday(), EFAULT, and put_tv32().

Here is the call graph for this function:

asmlinkage unsigned long osf_mmap unsigned long  addr,
unsigned long  len,
unsigned long  prot,
unsigned long  flags,
unsigned long  fd,
unsigned long  off
 

Definition at line 253 of file osf_sys.c.

References _MAP_HASSEMAPHORE, _MAP_INHERIT, _MAP_UNALIGNED, current, do_mmap(), EBADF, fget(), file, fput(), lock_kernel, MAP_ANONYMOUS, MAP_DENYWRITE, MAP_EXECUTABLE, NULL, out, printk, ret, and unlock_kernel.

Here is the call graph for this function:

asmlinkage int osf_mount unsigned long  typenr,
char *  path,
int  flag,
void *  data
 

Definition at line 524 of file osf_sys.c.

References EINVAL, lock_kernel, osf_cdfs_mount(), osf_procfs_mount(), osf_ufs_mount(), printk, and unlock_kernel.

Here is the call graph for this function:

static int osf_procfs_mount char *  dirname,
struct procfs_args args,
int  flags
[static]
 

Definition at line 507 of file osf_sys.c.

References copy_from_user, dev, do_mount(), EFAULT, ENODEV, get_unnamed_dev(), NULL, and put_unnamed_dev().

Referenced by osf_mount().

Here is the call graph for this function:

asmlinkage long osf_proplist_syscall enum pl_code  code,
union pl_args args
 

Definition at line 722 of file osf_sys.c.

References EOPNOTSUPP, error, pl_args::fget, pl_args::fset, pl_args::get, get_user, lock_kernel, pl_args::fgetargs::min_buf_size, pl_args::getargs::min_buf_size, pl_args::fsetargs::nbytes, pl_args::setargs::nbytes, PL_DEL, PL_FDEL, PL_FGET, PL_FSET, PL_GET, PL_SET, put_user, pl_args::set, unlock_kernel, verify_area(), VERIFY_READ, and VERIFY_WRITE.

Here is the call graph for this function:

asmlinkage int osf_select int  n,
fd_set inp,
fd_set outp,
fd_set exp,
struct timeval32 tvp
 

Definition at line 1164 of file osf_sys.c.

References __get_user, current, do_select(), EINVAL, ENOMEM, ERESTARTNOHAND, __kernel_fd_set::fds_bits, HZ, kfree(), kmalloc(), MAX_SCHEDULE_TIMEOUT, MAX_SELECT_SECONDS, out, ret, signal_pending, size, timeout, verify_area(), and VERIFY_READ.

Here is the call graph for this function:

asmlinkage int osf_set_program_attributes unsigned long  text_start,
unsigned long  text_len,
unsigned long  bss_start,
unsigned long  bss_len
 

Definition at line 71 of file osf_sys.c.

References current, lock_kernel, printk, and unlock_kernel.

asmlinkage int osf_setitimer int  which,
struct itimerval32 in,
struct itimerval32 out
 

Definition at line 1110 of file osf_sys.c.

References do_setitimer(), EFAULT, error, get_it32(), memset, NULL, and put_it32().

Here is the call graph for this function:

asmlinkage unsigned long osf_setsysinfo unsigned long  op,
void *  buffer,
unsigned long  nbytes,
int *  start,
void *  arg
 

Definition at line 937 of file osf