all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* lim_data too narrow
@ 2003-12-18  0:58 James Van Artsdalen
  2003-12-22  4:07 ` Richard Stallman
  0 siblings, 1 reply; 5+ messages in thread
From: James Van Artsdalen @ 2003-12-18  0:58 UTC (permalink / raw)


This bug report will be sent to the Free Software Foundation,
 not to your local site managers!!
Please write in English, because the Emacs maintainers do not have
translators to read other languages for them.

In GNU Emacs 21.3 (amd64--freebsd)

lim_data is too narrow to hold the size of the process data segment.
On my system (with 8 GB of RAM) the rlimit is by default (in KB):

$ ulimit -d
8388608

lim_data needs to be at least as wide as the rlimit .rlim_cur field or
truncation occurs.

I'm not sure what the right cross-platform portable way to detect this
situation is.  The patch below is an example.

Note that this change is not sufficient to build emacs for amd64.

*** mem-limits.h.~1~    Wed Mar  8 12:49:46 2000
--- mem-limits.h        Wed Dec 17 03:15:24 2003
***************
*** 98,104 ****
  static POINTER data_space_start;
  
  /* Number of bytes of writable memory we can expect to be able to get */
! static unsigned long lim_data;
  
  #ifdef NO_LIM_DATA
  static void
--- 98,104 ----
  static POINTER data_space_start;
  
  /* Number of bytes of writable memory we can expect to be able to get */
! static rlim_t lim_data;
  
  #ifdef NO_LIM_DATA
  static void

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: lim_data too narrow
  2003-12-18  0:58 lim_data too narrow James Van Artsdalen
@ 2003-12-22  4:07 ` Richard Stallman
  2003-12-22  6:17   ` Eli Zaretskii
  0 siblings, 1 reply; 5+ messages in thread
From: Richard Stallman @ 2003-12-22  4:07 UTC (permalink / raw)
  Cc: emacs-devel

    lim_data needs to be at least as wide as the rlimit .rlim_cur field or
    truncation occurs.

It would seem that on a 64-bit machine, lim_data should
be a 64-bit type.  Is there any agreement on how to
specify such a type in C?

We could use configure to check whether rlim_t is defined
in some header file.  What header file should it be in?

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: lim_data too narrow
  2003-12-22  4:07 ` Richard Stallman
@ 2003-12-22  6:17   ` Eli Zaretskii
  2003-12-23  5:03     ` Richard Stallman
  2004-01-04 19:53     ` Stefan Monnier
  0 siblings, 2 replies; 5+ messages in thread
From: Eli Zaretskii @ 2003-12-22  6:17 UTC (permalink / raw)
  Cc: james, emacs-devel

> From: Richard Stallman <rms@gnu.org>
> Date: Sun, 21 Dec 2003 23:07:56 -0500
> 
> It would seem that on a 64-bit machine, lim_data should
> be a 64-bit type.  Is there any agreement on how to
> specify such a type in C?

Modern compilers should support the int64_t type (it is mandated by
the new C99 standard and should be defined on stdint.h).

> We could use configure to check whether rlim_t is defined
> in some header file.  What header file should it be in?

According to Posix, it should be in sys/resource.h.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: lim_data too narrow
  2003-12-22  6:17   ` Eli Zaretskii
@ 2003-12-23  5:03     ` Richard Stallman
  2004-01-04 19:53     ` Stefan Monnier
  1 sibling, 0 replies; 5+ messages in thread
From: Richard Stallman @ 2003-12-23  5:03 UTC (permalink / raw)
  Cc: james, emacs-devel

    Modern compilers should support the int64_t type (it is mandated by
    the new C99 standard and should be defined on stdint.h).

Do we want it to be 64 bits on all machines?  I suppose it would
not do any great harm.

    > We could use configure to check whether rlim_t is defined
    > in some header file.  What header file should it be in?

    According to Posix, it should be in sys/resource.h.

In that case, let's make configure check that rlim_t is really
defined, and use it if it is defined.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: lim_data too narrow
  2003-12-22  6:17   ` Eli Zaretskii
  2003-12-23  5:03     ` Richard Stallman
@ 2004-01-04 19:53     ` Stefan Monnier
  1 sibling, 0 replies; 5+ messages in thread
From: Stefan Monnier @ 2004-01-04 19:53 UTC (permalink / raw)
  Cc: james, rms, emacs-devel

>> It would seem that on a 64-bit machine, lim_data should
>> be a 64-bit type.  Is there any agreement on how to
>> specify such a type in C?

> Modern compilers should support the int64_t type (it is mandated by
> the new C99 standard and should be defined on stdint.h).

Wouldn't something like size_t be preferable?


        Stefan

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-01-04 19:53 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-12-18  0:58 lim_data too narrow James Van Artsdalen
2003-12-22  4:07 ` Richard Stallman
2003-12-22  6:17   ` Eli Zaretskii
2003-12-23  5:03     ` Richard Stallman
2004-01-04 19:53     ` Stefan Monnier

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.