From 79842437684be380407661fc27e64f223a326b18 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Mon, 12 Apr 2010 21:40:28 -0700 Subject: Move to using 64-bit mid values in our internal open file database. This will allow us to share logic much easier between SMB1 and SMB2 servers. Jeremy --- source3/modules/onefs_open.c | 7 ++++--- source3/modules/vfs_aio_fork.c | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) (limited to 'source3/modules') diff --git a/source3/modules/onefs_open.c b/source3/modules/onefs_open.c index eb22584772..b0c88c71bf 100644 --- a/source3/modules/onefs_open.c +++ b/source3/modules/onefs_open.c @@ -358,7 +358,8 @@ static void defer_open(struct share_mode_lock *lck, if (procid_is_me(&e->pid) && (e->op_mid == req->mid)) { DEBUG(0, ("Trying to defer an already deferred " - "request: mid=%d, exiting\n", req->mid)); + "request: mid=%llu, exiting\n", + (unsigned long long)req->mid)); exit_server("attempt to defer a deferred request"); } } @@ -366,10 +367,10 @@ static void defer_open(struct share_mode_lock *lck, /* End paranoia check */ DEBUG(10,("defer_open_sharing_error: time [%u.%06u] adding deferred " - "open entry for mid %u\n", + "open entry for mid %llu\n", (unsigned int)request_time.tv_sec, (unsigned int)request_time.tv_usec, - (unsigned int)req->mid)); + (unsigned long long)req->mid)); if (!push_deferred_open_message_smb(req, request_time, timeout, (char *)state, sizeof(*state))) { diff --git a/source3/modules/vfs_aio_fork.c b/source3/modules/vfs_aio_fork.c index ebad4b4c43..8fd89362bc 100644 --- a/source3/modules/vfs_aio_fork.c +++ b/source3/modules/vfs_aio_fork.c @@ -383,7 +383,7 @@ static void handle_aio_completion(struct event_context *event_ctx, void *p) { struct aio_child *child = (struct aio_child *)p; - uint16 mid; + uint64_t mid; DEBUG(10, ("handle_aio_completion called with flags=%d\n", flags)); @@ -411,7 +411,8 @@ static void handle_aio_completion(struct event_context *event_ctx, child->retval.size); } - mid = child->aiocb->aio_sigevent.sigev_value.sival_int; + /* FIXME - this won't work for SMB2. */ + mid = (uint64_t)child->aiocb->aio_sigevent.sigev_value.sival_int; DEBUG(10, ("mid %d finished\n", (int)mid)); -- cgit