From: Alan Cox <alan@lxorguk.ukuu.org.uk>
To: Jody Bruchon <jody@jodybruchon.com>
Cc: ELKS <linux-8086@vger.kernel.org>
Subject: Re: Tentative "login:" loop fix
Date: Wed, 4 Mar 2015 11:34:54 +0000 [thread overview]
Message-ID: <20150304113454.7b3d6ac2@www.etchedpixels.co.uk> (raw)
In-Reply-To: <54F68513.2050002@jodybruchon.com>
On Tue, 03 Mar 2015 23:07:47 -0500
Jody Bruchon <jody@jodybruchon.com> wrote:
> There's this piece of code with no comments in arch/i86/mm/malloc.c:
>
> if (currentp->t_begstack > currentp->t_endbrk)
> if(len > currentp->t_endseg - 0x1000) {
> return -ENOMEM;
> }
>
> I don't understand why t_endseg is being reduced by 0x1000 before
> checking and can't find any justification for it anywhere else in the
> kernel code; fs/exec.c:sys_execve() sets t_endseg and only says "needed
> for sys_brk()" which is of no help. Documentation/text/bin_formats.txt
> mentions 0x1000 as part of an example while discussing the ELKS
> executable file format but it doesn't quite seem to be related. From
> what I can gather, ELKS uses 0x1000 as a data segment offset in some
> places but I can't see any of those being related to what's going on in
> sys_brk()...
>
> One thing is for certain: this check is causing the frustrating problem
> with the "login:" prompt that never ends. Removing the offset in the
> check fixes the login loop problem (which has plagued ELKS for a long
> time) and I can't seem to trigger any bad behavior in any random
> userspace programs with the check removed.
Why does it cause the login prompt problem ?
Removing the check fixes it but you don't say why that cures it, just
that it does.
Alan
prev parent reply other threads:[~2015-03-04 11:34 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-04 4:07 Tentative "login:" loop fix Jody Bruchon
2015-03-04 11:34 ` Alan Cox [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150304113454.7b3d6ac2@www.etchedpixels.co.uk \
--to=alan@lxorguk.ukuu.org.uk \
--cc=jody@jodybruchon.com \
--cc=linux-8086@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).