1 /* 2 * Copyright (c) 1997 John S. Dyson. All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions 6 * are met: 7 * 1. Redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer. 9 * 2. John S. Dyson's name may not be used to endorse or promote products 10 * derived from this software without specific prior written permission. 11 * 12 * DISCLAIMER: This code isn't warranted to do anything useful. Anything 13 * bad that happens because of using this software isn't the responsibility 14 * of the author. This software is distributed AS-IS. 15 * 16 * $FreeBSD: src/sys/kern/vfs_aio.c,v 1.70.2.28 2003/05/29 06:15:35 alc Exp $ 17 */ 18 19 /* 20 * This file contains stubs for the POSIX 1003.1B AIO/LIO facility. 21 */ 22 23 #include <sys/param.h> 24 #include <sys/systm.h> 25 #include <sys/buf.h> 26 #include <sys/sysproto.h> 27 #include <sys/filedesc.h> 28 #include <sys/kernel.h> 29 #include <sys/fcntl.h> 30 #include <sys/file.h> 31 #include <sys/lock.h> 32 #include <sys/unistd.h> 33 #include <sys/proc.h> 34 #include <sys/resourcevar.h> 35 #include <sys/signalvar.h> 36 #include <sys/protosw.h> 37 #include <sys/socketvar.h> 38 #include <sys/sysctl.h> 39 #include <sys/vnode.h> 40 #include <sys/conf.h> 41 #include <sys/event.h> 42 #include <sys/objcache.h> 43 44 #include <vm/vm.h> 45 #include <vm/vm_extern.h> 46 #include <vm/pmap.h> 47 #include <vm/vm_map.h> 48 #include <sys/aio.h> 49 50 #include <sys/file2.h> 51 #include <sys/buf2.h> 52 #include <sys/thread2.h> 53 54 #include <machine/limits.h> 55 56 int 57 sys_aio_return(struct aio_return_args *uap) 58 { 59 return ENOSYS; 60 } 61 62 int 63 sys_aio_suspend(struct aio_suspend_args *uap) 64 { 65 return ENOSYS; 66 } 67 68 int 69 sys_aio_cancel(struct aio_cancel_args *uap) 70 { 71 return ENOSYS; 72 } 73 74 int 75 sys_aio_error(struct aio_error_args *uap) 76 { 77 return ENOSYS; 78 } 79 80 int 81 sys_aio_read(struct aio_read_args *uap) 82 { 83 return ENOSYS; 84 } 85 86 int 87 sys_aio_write(struct aio_write_args *uap) 88 { 89 return ENOSYS; 90 } 91 92 int 93 sys_lio_listio(struct lio_listio_args *uap) 94 { 95 return ENOSYS; 96 } 97 98 int 99 sys_aio_waitcomplete(struct aio_waitcomplete_args *uap) 100 { 101 return ENOSYS; 102 } 103 104 static int 105 filt_aioattach(struct knote *kn) 106 { 107 return ENXIO; 108 } 109 110 struct filterops aio_filtops = 111 { FILTEROP_MPSAFE, filt_aioattach, NULL, NULL }; 112