Zsh Mailing List Archive
Messages sorted by:
Re: Glob problem with memory
- X-seq: zsh-workers 9184
- From: jarausch@xxxxxxxxxxxxxxxxxxx
- To: pws@xxxxxxxxxxxxxxxxxxxxxxxx
- Subject: Re: Glob problem with memory
- Date: Mon, 03 Jan 2000 12:54:03 +0100
- Cc: zsh-workers@xxxxxxxxxxxxxx
- In-reply-to: <200001031011.LAA11708@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
- Reply-to: jarausch@xxxxxxxxxxxxxxxxxxx
On 3 Jan, To: pws@xxxxxxxxxxxxxxxxxxxxxxxx wrote:
> On 1 Jan, Peter Stephenson wrote:
>> Felix Rosencrantz wrote:
>>> When attempting to do an "echo *(/)" or use other glob qualifiers,
>>> I've been getting a bus error with this stack trace on Solaris 5.6.
>>> I started seeing this problem in builds sometime after Dec 14th.
>>> I think it is related to the recently made memory changes.
>>> I don't see the problem if I replace the hcalloc on line glob.c:1312
>>> with a zcalloc, so the problem seems to be related to memory allocation.
>> We should check that the new mmap() memory things in mem.c always return
>> 64-bit aligned pointers where necessary, even on 32-bit machines. I was
>> getting just this sort of problem with the old form of the zhalloc()
>> mechanism when I introduced 64-bit integer support and before I fixed the
>> alignment. I'll have a look at this, but Sven might be able to trace it
>> more effectively when he gets back. Meanwhile, changing the USE_MMAP
>> #define in mem.c to #undef USE_MMAP should fix things up for the time
> Here on my IRIX box (it's 64 bit but I am using -n32 i.e. 32 bit code)
> I get the same bus error,
> BUT mem.c does NOT use mmap here, since my <sys/mman.h> doesn't define
> So what can we do?
In addition I found out
sizeof(struct heap) == 20 here, so with the definition
#define arena(X) ((char *) (X) + sizeof(struct heap))
in mem.c line 324
return arena(h) + n - size;
is nearly guaranteed to be misaligned here.
Lehrstuhl fuer Numerische Mathematik
Institute of Technology, RWTH Aachen
D 52056 Aachen, Germany
Messages sorted by: