exofs: Allow O_DIRECT open
With this minimal do nothing patch an application can open O_DIRECT and then actually do buffered sync IO instead. But the aio API is supported which is a good thing Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
This commit is contained in:
@@ -961,6 +961,14 @@ static void exofs_invalidatepage(struct page *page, unsigned int offset,
|
|||||||
WARN_ON(1);
|
WARN_ON(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* TODO: Should be easy enough to do proprly */
|
||||||
|
static ssize_t exofs_direct_IO(int rw, struct kiocb *iocb,
|
||||||
|
const struct iovec *iov, loff_t offset, unsigned long nr_segs)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
const struct address_space_operations exofs_aops = {
|
const struct address_space_operations exofs_aops = {
|
||||||
.readpage = exofs_readpage,
|
.readpage = exofs_readpage,
|
||||||
.readpages = exofs_readpages,
|
.readpages = exofs_readpages,
|
||||||
@@ -974,7 +982,7 @@ const struct address_space_operations exofs_aops = {
|
|||||||
|
|
||||||
/* Not implemented Yet */
|
/* Not implemented Yet */
|
||||||
.bmap = NULL, /* TODO: use osd's OSD_ACT_READ_MAP */
|
.bmap = NULL, /* TODO: use osd's OSD_ACT_READ_MAP */
|
||||||
.direct_IO = NULL, /* TODO: Should be trivial to do */
|
.direct_IO = exofs_direct_IO,
|
||||||
|
|
||||||
/* With these NULL has special meaning or default is not exported */
|
/* With these NULL has special meaning or default is not exported */
|
||||||
.get_xip_mem = NULL,
|
.get_xip_mem = NULL,
|
||||||
|
Reference in New Issue
Block a user