[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: [Libevent-users] IRIX build failure in regress_util.c
On Mon, Nov 22, 2010 at 6:59 PM, Kevin Bowling <kevin.bowling@xxxxxxxxxx> wrote:
> On Mon, Nov 22, 2010 at 9:54 AM, Nick Mathewson <nickm@xxxxxxxxxxxxx> wrote:
>>
>> On Mon, Nov 22, 2010 at 4:06 AM, Kevin Bowling <kevin.bowling@xxxxxxxxxx>
>> wrote:
>> > IRIX 6.5.29, latest MIPSpro compiler and various GNU utilities from
>> > Nekochan
>> > repository. libevent-2.0.8rc. I don't see anything wrong with the
>> > code,
>> > especially a line termination one. Any ideas?
>>
>> My guess would be that somewhere, in system some header file,
>> sa_family is #defined to something else, such that naming a struct
>> member "sa_family" will not work.
>>
>> To see if I'm right, try renaming the member (and references to it in
>> the function below) to something like addr_family? Be careful not to
>> change too many "sa_family" instances, of course: some will still
>> refer to the field in struct sockaddr.
>
> Good call! I pushed the change on github.
Merged it.
> I've attached the test output since there are some unrelated failures.
> Could the failures be related to some of the conversion compiler warnings
> that I have uploaded here https://gist.github.com/710891? A quick look and
> IRIX defines separate mmap64 and off64_t. If you think this is the right
> track, I will try to come up with and test a patch.
It could be; I'm not entirely sure. Some of those warnings are
completely spurious (like casting a pointer to a uintptr_t), but some
of them (like implicitly casting a larger int to a smaller int) could
cause problems.
I'm going to fix a few of them tonight (mainly the ones about unused
values, signed int field:1, and stupid pointer tricks. If you want to
nail down any others, that would be great. github works fine for
organizing patches; ideally, having each commit solve a separate kind
of bug/warning would be best in case we need to discus & cherry pick.
> It otherwise works for some simple uses involving buffer events and evhttp
> that I have tried so far. I'll give AIX with XL C a go later this week.
>
> Regards,
> Kevin Bowling
>
> kev009@IRIS ~/libevent-2.0.8-rc $ make check
> make check-recursive
> Making check in .
> Making check in include
> Making check in sample
> Making check in test
> make check-am
> make check-TESTS
> Running tests:
> KQUEUE
> Skipping test
> DEVPOLL
> test-eof:OKAY
> test-weof:OKAY
> test-time:OKAY
> test-changelist:OKAY
> regress:
> NOTE regress.c:1912: Can't fake unsetenv; skipping test
> FAIL regress_buffer.c:918: assert(sum == evbuffer_get_length(buf)):
> 5356000 vs 5324005evbuffer/iterative:
> [iterative FAILED]
I don't know what's up here, but the numbers involved aren't even
close to 1<<31, so I doubt it's a 64-bit issue. Something else is
probably going on.
> FAIL regress_util.c:389: assert(r == 18): 15 vs 18util/evutil_snprintf:
> [evutil_snprintf FAILED]
This is pretty serious; if evutil_snprintf isn't working right, this
could be a reason for some other tests failing.
I'm not sure what's up with the other tests. You can get a more
detailed view of the regression tests by running ./test/regress. To
see a particular test in detail, run ./test/regress --verbose
[testname] (e.g., ./test/regress --verbose util/evutil_snprintf) .
If the answer's nontrivial, it's probably best to open up a ticket on
the bugtracker; my inbox is a very leaky task management system.
peace,
--
Nick
***********************************************************************
To unsubscribe, send an e-mail to majordomo@xxxxxxxxxxxxx with
unsubscribe libevent-users in the body.