O_DIRECT is working now.

This commit is contained in:
Sears Russell 2004-07-27 22:04:59 +00:00
parent 3cbe112926
commit c649ba7504
3 changed files with 8 additions and 5 deletions

View file

@ -78,9 +78,9 @@ terms specified in this license.
/*#define MAX_BUFFER_SIZE 100003 */
/*#define MAX_BUFFER_SIZE 10007*/
/*#define MAX_BUFFER_SIZE 5003*/
/*#define MAX_BUFFER_SIZE 71 */
#define MAX_BUFFER_SIZE 7
#define BUFFER_ASOOCIATIVE 2
#define MAX_BUFFER_SIZE 71
/*#define MAX_BUFFER_SIZE 7 */
/*#define BUFFER_ASOOCIATIVE 2 */
#define MAX_TRANSACTIONS 1000

View file

@ -86,6 +86,9 @@ terms specified in this license.
$Id$
************************************************************************/
/* _XOPEN_SOURCE is needed for posix_memalign */
#define _XOPEN_SOURCE 600
#include <stdlib.h>
#include <config.h>
#include <lladd/common.h>
@ -425,7 +428,7 @@ void pageInit() {
for(int i = 0; i < MAX_BUFFER_SIZE+1; i++) {
pool[i].rwlatch = initlock();
pool[i].loadlatch = initlock();
pool[i].memAddr = malloc(PAGE_SIZE);
assert(!posix_memalign((void*)(&(pool[i].memAddr)), PAGE_SIZE, PAGE_SIZE));
}
pthread_mutex_init(&lastFreepage_mutex , NULL);

View file

@ -3,7 +3,6 @@
This file handles all of the file I/O for pages.
*/
#include "page.h"
#include <lladd/bufferManager.h>
@ -103,6 +102,7 @@ void pageWrite(Page * ret) {
}
pthread_mutex_lock(&stable_mutex);
offset = myLseekNoLock(stable, pageoffset, SEEK_SET);
assert(offset == pageoffset);
assert(ret->memAddr);