Sorry Doug, just tried to investigate a bit (I am not the best programmer in the world). Msync should be called as follows:
int msync(void *addr, size_t len, int flags);
It looks to me in your case the parameter 2 is supposed to parameter 1 and I don't know what the heck got shoved in parameter 1. Maybe parameter 1 was supposed to be parameter 2 without the 0x??
Regards Andrew
On Wed, 2004-12-08 at 13:31 -0500, Doug Luce wrote:
Andrew,
Thanks for taking a shot at diagnosing this. That space is actually an artifact of me pasting log entries into the email. It doesn't exist in the config file or anywhere else.
Dioug
On Wed, 8 Dec 2004, Andrew Hutchings wrote:
Date: Wed, 08 Dec 2004 14:05:30 +0000 From: Andrew Hutchings mail@a-wing.co.uk To: Doug Luce doug@dovecot.con.com Cc: dovecot@dovecot.org Subject: Re: [Dovecot] More msync issues...
Hi Doug,
I think this might be because there is a space between /home and /doug/Maildir/dovecot.index It would then see the /doug/Maildir/dovecot.index as a second argument.
Regards Andrew
On Wed, 2004-12-08 at 05:12 -0500, Doug Luce wrote:
From /var/log/maillog:
Dec 8 01:51:46 aurora dovecot: IMAP(doug): msync() failed with index file /home /doug/Maildir/dovecot.index: Invalid argument
From the ktrace that was running on that process:
22124 imap NAMI "/home/doug/Maildir/dovecot.index" 22124 imap RET stat 0 22124 imap CALL fcntl(0x4,0x8,0x11ffe7b8) 22124 imap RET fcntl 0 22124 imap CALL msync(0x130960000,0x1aff4,0) 22124 imap RET msync -1 errno 22 Invalid argument
From man msync:
ERRORS The msync() system call will fail if:
... [EINVAL] The addr argument is not a multiple of the hardware page size.
From the command line:
% pagesize 8192
Calculating:
0x1AFF4 = 110580 = 13*8192+4084
Not sure if this is relevant...
Doug
-- Andrew Hutchings Systems Operator / Developer / Linux Guru Netserve Consultants Ltd. http://www.domaincity.co.uk/
-- Andrew Hutchings Systems Operator / Developer / Linux Guru Netserve Consultants Ltd. http://www.domaincity.co.uk/