/*
- * $Id: disk.cc,v 1.114 1998/05/20 22:39:44 wessels Exp $
+ * $Id: disk.cc,v 1.115 1998/05/22 21:11:47 wessels Exp $
*
* DEBUG: section 6 Disk I/O Routines
* AUTHOR: Harvest Derived
debug(6, 3) ("diskHandleWrite: FD %d\n", fd);
/* We need to combine subsequent write requests after the first */
/* But only if we don't need to seek() in betwen them, ugh! */
+ /* XXX This currently ignores any seeks (file_offset) */
if (fdd->write_q->next != NULL && fdd->write_q->next->next != NULL) {
len = 0;
for (q = fdd->write_q->next; q != NULL; q = q->next)
assert(fdd->write_q->len > fdd->write_q->buf_offset);
#if USE_ASYNC_IO
aioWrite(fd,
+ -1, /* seek offset, -1 == append */
fdd->write_q->buf + fdd->write_q->buf_offset,
fdd->write_q->len - fdd->write_q->buf_offset,
diskHandleWriteComplete,
ctrlp->data = ctrl_dat;
#if USE_ASYNC_IO
aioRead(fd,
+ ctrl_dat->offset,
ctrl_dat->buf,
ctrl_dat->req_len,
diskHandleReadComplete,
extern void aioCancel(int, void *);
extern void aioOpen(const char *, int, mode_t, AIOCB *, void *, void *);
extern void aioClose(int);
-extern void aioWrite(int, char *, int, AIOCB *, void *);
-extern void aioRead(int, char *, int, AIOCB *, void *);
+extern void aioWrite(int, int offset, char *, int size, AIOCB *, void *);
+extern void aioRead(int, int offset, char *, int size, AIOCB *, void *);
extern void aioStat(char *, struct stat *, AIOCB *, void *, void *);
extern void aioUnlink(const char *, AIOCB *, void *);
extern void aioCheckCallbacks(void);