From: Bao C. H. <ba...@se...> - 2001-09-11 18:23:40
|
I am sending this message also to Ulrich Drepper, since the ChangeLog indicated that he removed the MAP_FIXED in the following. It is causing problems running pthread applications in the sh4-linux environment. Following is the relevant segment of linuxthreads that is broken: In function pthread_allocate_stack(), file manager.c: ....... # ifdef _STACK_GROWS_DOWN new_thread = default_new_thread; new_thread_bottom = (char *) (new_thread + 1) - stacksize; map_addr = new_thread_bottom - guardsize; res_addr = mmap(map_addr, stacksize + guardsize, PROT_READ | PROT_WRITE | PROT_EXEC, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0); if (res_addr != map_addr) { /* Bad luck, this segment is already mapped. */ if (res_addr != MAP_FAILED) munmap (res_addr, stacksize + guardsize); return -1; } ....... We resort to patching the MAP_FIXED back to linuxthreads until we get a resolution on this problem. Thanks. Bao > -----Original Message----- > From: lin...@li... > [mailto:lin...@li...]On Behalf Of Bao C. Ha > Sent: Tuesday, September 11, 2001 9:55 AM > To: 'David Woodhouse' > Cc: lin...@li...; lin...@m1... > Subject: RE: [linuxsh-dev] Different old_mmap behavior in 2.4.5 and > 2.4.8 > > > > > > > > Is this supposed to be the correct area? What changes > > make the newer > > > kernels to return different pointers? > > > > Looking at the numbers, I'd be inclined to guess that it's > > moved due to > > cache aliasing. And hence that it's not very likely to get 'fixed'. > > > Either the sh4 kernel has to be fixed, or linuxthread has to be fixed. > MAP_FIXED was removed from linuxthreads sometimes earlier this year. > Any serious applications using linuxthreads will exhibit the same > problem. > > Bao > > _______________________________________________ > linuxsh-dev mailing list > lin...@li... > https://lists.sourceforge.net/lists/listinfo/linuxsh-dev > |