/*
* uio_td is primarily used for USERSPACE transfers, but some devices
* like ttys may also use it to get at the process.
+ *
+ * NOTE: uio_resid: Previously used int and FreeBSD decided to use ssize_t,
+ * but after reviewing use cases and in particular the fact that the
+ * iov uses an unsigned quantity, DragonFly will use the (unsigned)
+ * size_t.
*/
struct uio {
struct iovec *uio_iov;
int uio_iovcnt;
off_t uio_offset;
- int uio_resid;
+ size_t uio_resid;
enum uio_seg uio_segflg;
enum uio_rw uio_rw;
struct thread *uio_td;
struct vm_page;
void uio_yield (void);
-int uiomove (caddr_t, int, struct uio *);
-int uiomove_frombuf (void *buf, int buflen, struct uio *uio);
-int uiomove_fromphys(struct vm_page *ma[], vm_offset_t offset, int n,
- struct uio *uio);
-int uiomoveco (caddr_t, int, struct uio *, struct vm_object *);
+int uiomove (caddr_t, size_t, struct uio *);
+int uiomove_frombuf (void *buf, size_t buflen, struct uio *uio);
+int uiomove_fromphys(struct vm_page *ma[], vm_offset_t offset,
+ size_t n, struct uio *uio);
int uioread (int, struct uio *, struct vm_object *, int *);
int iovec_copyin(struct iovec *, struct iovec **, struct iovec *,
- size_t, int *);
+ size_t, size_t *);
/*
* MPSAFE