Re: problems with cvsup on FreeBSD 9 snapshot 201101

From: Kostik Belousov <kostikbel_at_gmail.com>
Date: Wed, 15 Jun 2011 17:58:47 +0300
On Wed, Jun 15, 2011 at 10:24:46AM -0400, Eric McCorkle wrote:
> On 6/15/11 8:23 AM, Holger Kipp wrote:
> >Dear all,
> >
> >I had installed FreeBSD 9 amd64 from snapshot (ISO-image) located here:
> >ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/201101/FreeBSD-9.0-CURRENT-201101-amd64-dvd1.iso 
> >
> >
> >Today I wanted to cvsup to a later date to upgrade to ZFS v28
> >and compiled port /usr/ports/net/cvsup-without-gui without problems.
> >
> >Starting freshly compiled cvsup then gives me
> >
> >"Illegal Instruction"
> >
> >This error seems to be identical to 
> >http://lists.freebsd.org/pipermail/freebsd-current/2010-September/020083.html 
> >
> 
> I've gotten the same problem, and managed to diagnose it.  The problem 
> actually isn't an illegal instruction, but a stack misalignment.  If you 
> load it in gdb, it will die with SIGSEGV somewhere in libc.so.7, on a 
> callq instruction.  This is because callq needs the stack to be 16-byte 
> aligned, and it's not for some reason.
Stack alignment requirement is an ABI convention, and it is not enforced
by CPU, except several special cases. In particular, either EFLAGS.AC
bit should be set, that usually is not, or SSE instruction explicitely
disallowing non-aligned access executed. Anyway, you will not get
Illegal instruction fault for unaligned access.

> 
> As for why it's not aligned, I don't know.
> 
> -- 
> Eric McCorkle
> Computer Science Ph.D Student,
> University of Massachusetts
> Research Intern, IBM Research
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"

Received on Wed Jun 15 2011 - 12:58:55 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:14 UTC