[Dovecot] More msync issues...
doug at dovecot.con.com
doug at dovecot.con.com
Wed Dec 8 22:42:22 EET 2004
The ktrace output has "msync(0x130960000,0x1aff4,0)." Ktrace doesn't have
access to the information from the original source, so it's not able to
resolve the first argument to the void pointer. What ktrace shows looks
right for the first argument, though -- a full 32-bit address.
The second looks like it's within a valid range as well, as is the third.
The problem I'm seeing is that the second argument is not a multiple of
the machine's pagesize. The man page says that such an issue will result
in the error as seen.
Doug
On Wed, 8 Dec 2004, Andrew Hutchings wrote:
> 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 at a-wing.co.uk>
>>> To: Doug Luce <doug at dovecot.con.com>
>>> Cc: dovecot at 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/
>
>
More information about the dovecot
mailing list