Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Feb 2003 15:54:22 -0500
From:      "Steve Ames" <steve@virtual-voodoo.com>
To:        "Shizuka Kudo" <shizukakudo_99@yahoo.com>, <freebsd-current@FreeBSD.ORG>
Subject:   Re: today's 5-current hang hard when building apache2 port
Message-ID:  <015d01c2d9eb$6bd26e10$2bd90c42@officescape.net>
References:  <20030221204152.9440.qmail@web11408.mail.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I experienced this problem also. Also could not buildworld or buildkernel
(caused a reboot). I reverted to a 2/16 kernel and the problems went away.
Haven't had time to narrow it down further than that.

----- Original Message -----
From: "Shizuka Kudo" <shizukakudo_99@yahoo.com>
To: <freebsd-current@FreeBSD.ORG>
Sent: Friday, February 21, 2003 3:41 PM
Subject: today's 5-current hang hard when building apache2 port


> I cvsup today and build/install world & kernel.  The machine was working
fine until I tried to
> build apache2 port.  When configuring apache2, my PC hanged at the
following line and need hard
> reset (i.e. cannot break into debugger and need pressing reset button).
>
>   checking if TCP_NODELAY setting is inherited from listening sockets...
>
> I traced the conftest program under gdb and received the following error
on the
>   "rc = connect(client_s, (struct sockaddr *)&sa, sizeof sa)" call.
>
>   Program received signal SIGSEGV, Segmentation fault.
>   0x280fdaf0 in _longjmp () from /usr/lib/libc.so.5
>
> Anyone has the same problem or idea what's happening?
>
> Attached are the confdefs.h and conftest.c extracted from
srclib/apr/configure that gave the above
> problem.
>
> P.S. When building the apache2 port, I had CPUTYPE=p3 in make.conf and
used "make configure WITH_THREADS=yes"
>
> __________________________________________________
> Do you Yahoo!?
> Yahoo! Tax Center - forms, calculators, tips, more
> http://taxes.yahoo.com/


----------------------------------------------------------------------------
----


>
> #define PACKAGE_NAME ""
> #define PACKAGE_TARNAME ""
> #define PACKAGE_VERSION ""
> #define PACKAGE_STRING ""
> #define PACKAGE_BUGREPORT ""
> #define STDC_HEADERS 1
> #define HAVE_SYS_TYPES_H 1
> #define HAVE_SYS_STAT_H 1
> #define HAVE_STDLIB_H 1
> #define HAVE_STRING_H 1
> #define HAVE_MEMORY_H 1
> #define HAVE_STRINGS_H 1
> #define HAVE_INTTYPES_H 1
> #define HAVE_STDINT_H 1
> #define HAVE_UNISTD_H 1
> #define HAVE_DLFCN_H 1
> #define HAVE_LIBM 1
> #define HAVE_PTHREAD_H 1
> #define USE_THREADS 1
> #define HAVE_PTHREAD_KEY_DELETE 1
> #define HAVE_PTHREAD_RWLOCK_INIT 1
> #define READDIR_IS_THREAD_SAFE 1
> #define GETHOSTBYNAME_IS_THREAD_SAFE 1
> #define GETHOSTBYADDR_IS_THREAD_SAFE 1
> #define HAVE_GETHOSTBYADDR_R 1
> #define HAVE_SIGSUSPEND 1
> #define HAVE_SIGWAIT 1
> #define HAVE_POLL 1
> #define HAVE_SYS_MMAN_H 1
> #define HAVE_SYS_IPC_H 1
> #define HAVE_SYS_SHM_H 1
> #define HAVE_SYS_FILE_H 1
> #define HAVE_MMAP 1
> #define HAVE_MUNMAP 1
> #define HAVE_SHM_OPEN 1
> #define HAVE_SHM_UNLINK 1
> #define HAVE_SHMGET 1
> #define HAVE_SHMAT 1
> #define HAVE_SHMDT 1
> #define HAVE_SHMCTL 1
> #define HAVE_MAP_ANON 1
> #define anonymous shared memory allocation method 1
> #define USE_SHMEM_MMAP_ANON 1
> #define namebased memory allocation method 1
> #define USE_SHMEM_SHMGET 1
> #define HAVE_ALLOCA 1
> #define HAVE_CALLOC 1
> #define HAVE_STRCASECMP 1
> #define HAVE_SETSID 1
> #define HAVE_ISINF 1
> #define HAVE_ISNAN 1
> #define HAVE_SETRLIMIT 1
> #define HAVE_GETRLIMIT 1
> #define HAVE_WRITEV 1
> #define HAVE_SENDFILE 1
> #define HAVE_SIGACTION 1
> #define SYS_SIGLIST_DECLARED 1
> #define HAVE_FORK 1
> #define HAVE_STRERROR_R 1
> #define STRERROR_R_RC_INT 1
> #define HAVE_MMAP 1
> #define HAVE_MEMMOVE 1
> #define HAVE_GETPASS 1
> #define HAVE_GMTIME_R 1
> #define HAVE_LOCALTIME_R 1
> #define HAVE_HSTRERROR 1
> #define HAVE_MKSTEMP 1
> #define DIRENT_INODE d_fileno
> #define DIRENT_TYPE d_type
> #define STDC_HEADERS 1
> #define HAVE_CTYPE_H 1
> #define HAVE_DIRENT_H 1
> #define HAVE_DLFCN_H 1
> #define HAVE_ERRNO_H 1
> #define HAVE_FCNTL_H 1
> #define HAVE_GRP_H 1
> #define HAVE_LIMITS_H 1
> #define HAVE_MEMORY_H 1
> #define HAVE_NETDB_H 1
> #define HAVE_OSRELDATE_H 1
> #define HAVE_POLL_H 1
> #define HAVE_PWD_H 1
> #define HAVE_SEMAPHORE_H 1
> #define HAVE_SIGNAL_H 1
> #define HAVE_STDARG_H 1
> #define HAVE_STDDEF_H 1
> #define HAVE_STDIO_H 1
> #define HAVE_STDLIB_H 1
> #define HAVE_STRING_H 1
> #define HAVE_STRINGS_H 1
> #define HAVE_TERMIOS_H 1
> #define HAVE_TIME_H 1
> #define HAVE_UNISTD_H 1
> #define HAVE_ARPA_INET_H 1
> #define HAVE_NETINET_IN_H 1
> #define HAVE_SYS_FILE_H 1
> #define HAVE_SYS_MMAN_H 1
> #define HAVE_SYS_POLL_H 1
> #define HAVE_SYS_RESOURCE_H 1
> #define HAVE_SYS_SELECT_H 1
> #define HAVE_SYS_SEM_H 1
> #define HAVE_SYS_SIGNAL_H 1
> #define HAVE_SYS_SOCKET_H 1
> #define HAVE_SYS_STAT_H 1
> #define HAVE_SYS_SYSCTL_H 1
> #define HAVE_SYS_SYSLIMITS_H 1
> #define HAVE_SYS_TIME_H 1
> #define HAVE_SYS_TYPES_H 1
> #define HAVE_SYS_UIO_H 1
> #define HAVE_SYS_UN_H 1
> #define HAVE_SYS_WAIT_H 1
> #define HAVE_NETINET_TCP_H 1
> #define HAVE_SOCKLEN_T 1
> #define SIZEOF_VOIDP 4
> #define SIZEOF_CHAR 1
> #define SIZEOF_INT 4
> #define SIZEOF_LONG 4
> #define SIZEOF_SHORT 2
> #define SIZEOF_LONG_DOUBLE 12
> #define SIZEOF_LONG_LONG 8
> #define SIZEOF_SSIZE_T 4
> #define SIZEOF_SIZE_T 4
> #define SIZEOF_OFF_T 8
> #define SIZEOF_PID_T 4
> #define HAVE_STRNCASECMP 1
> #define HAVE_STRCASECMP 1
> #define HAVE_STRDUP 1
> #define HAVE_STRSTR 1
> #define HAVE_MEMCHR 1
> #define HAVE_STRTOLL 1
> #define HAVE_DLOPEN 1
> #define HAVE_DLSYM 1
> #define DSO_USE_DLFCN 1
> #define HAVE_WAITPID 1
> #define HAVE_VLA 1
> #define HAVE_SEMGET 1
> #define HAVE_SEMCTL 1
> #define HAVE_FLOCK 1
> #define HAVE_SEMAPHORE_H 1
> #define HAVE_SEM_CLOSE 1
> #define HAVE_SEM_UNLINK 1
> #define HAVE_SEM_POST 1
> #define HAVE_SEM_WAIT 1
> #define HAVE_LOCK_EX 1
> #define HAVE_F_SETLK 1
> #define HAVE_SEM_UNDO 1
> #define HAVE_POLLIN 1
> #define HAVE_PTHREAD_PROCESS_SHARED 1
> #define apr_lock implementation method 1
> #define USE_FLOCK_SERIALIZE 1
> #define DEV_RANDOM "/dev/random"
> #define HAVE_GMTOFF 1
> #define HAVE_SOCKADDR_SA_LEN 1
>


----------------------------------------------------------------------------
----


> #line 25093 "configure"
> #include "confdefs.h"
>
> #include <stdio.h>
> #ifdef HAVE_SYS_TYPES_H
> #include <sys/types.h>
> #endif
> #ifdef HAVE_SYS_SOCKET_H
> #include <sys/socket.h>
> #endif
> #ifdef HAVE_NETINET_IN_H
> #include <netinet/in.h>
> #endif
> #ifdef HAVE_NETINET_TCP_H
> #include <netinet/tcp.h>
> #endif
> #ifndef HAVE_SOCKLEN_T
> typedef int socklen_t;
> #endif
> int main(void) {
>     int listen_s, connected_s, client_s;
>     int listen_port, rc;
>     struct sockaddr_in sa;
>     socklen_t sa_len;
>     socklen_t option_len;
>     int option;
>
>     listen_s = socket(AF_INET, SOCK_STREAM, 0);
>     if (listen_s < 0) {
>         perror("socket");
>         exit(1);
>     }
>     option = 1;
>     rc = setsockopt(listen_s, IPPROTO_TCP, TCP_NODELAY, &option, sizeof
option);
>     if (rc < 0) {
>         perror("setsockopt TCP_NODELAY");
>         exit(1);
>     }
>     memset(&sa, 0, sizeof sa);
>     sa.sin_family = AF_INET;
> #ifdef BEOS
>     sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
> #endif
>     /* leave port 0 to get ephemeral */
>     rc = bind(listen_s, (struct sockaddr *)&sa, sizeof sa);
>     if (rc < 0) {
>         perror("bind for ephemeral port");
>         exit(1);
>     }
>     /* find ephemeral port */
>     sa_len = sizeof(sa);
>     rc = getsockname(listen_s, (struct sockaddr *)&sa, &sa_len);
>     if (rc < 0) {
>         perror("getsockname");
>         exit(1);
>     }
>     listen_port = sa.sin_port;
>     rc = listen(listen_s, 5);
>     if (rc < 0) {
>         perror("listen");
>         exit(1);
>     }
>     client_s = socket(AF_INET, SOCK_STREAM, 0);
>     if (client_s < 0) {
>         perror("socket");
>         exit(1);
>     }
>     memset(&sa, 0, sizeof sa);
>     sa.sin_family = AF_INET;
>     sa.sin_port   = listen_port;
> #ifdef BEOS
>     sa.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
> #endif
>     /* leave sin_addr all zeros to use loopback */
>     rc = connect(client_s, (struct sockaddr *)&sa, sizeof sa);
>     if (rc < 0) {
>         perror("connect");
>         exit(1);
>     }
>     sa_len = sizeof sa;
>     connected_s = accept(listen_s, (struct sockaddr *)&sa, &sa_len);
>     if (connected_s < 0) {
>         perror("accept");
>         exit(1);
>     }
>     option_len = sizeof option;
>     rc = getsockopt(connected_s, IPPROTO_TCP, TCP_NODELAY, &option,
&option_len);
>     if (rc < 0) {
>         perror("getsockopt");
>         exit(1);
>     }
>     if (!option) {
>         fprintf(stderr, "TCP_NODELAY is not set in the child.\n");
>         exit(1);
>     }
>     return 0;
> }
>
>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?015d01c2d9eb$6bd26e10$2bd90c42>