public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andrea Arcangeli <andrea@suse.de>
To: Jeff Dike <jdike@karaya.com>
Cc: linux-kernel@vger.kernel.org
Subject: Re: 2.4.7pre8aa1
Date: Mon, 23 Jul 2001 03:11:46 +0200	[thread overview]
Message-ID: <20010723031146.D23517@athlon.random> (raw)
In-Reply-To: <200107192245.f6JMjcR08865@karaya.com> <20010720033749.J31850@athlon.random>
In-Reply-To: <20010720033749.J31850@athlon.random>; from andrea@suse.de on Fri, Jul 20, 2001 at 03:37:49AM +0200

On Fri, Jul 20, 2001 at 03:37:49AM +0200, Andrea Arcangeli wrote:
> On Thu, Jul 19, 2001 at 06:45:38PM -0400, Jeff Dike wrote:
> > > Only in 2.4.7pre6aa1: 51_uml-ac-to-aa-2.bz2
> > > Only in 2.4.7pre8aa1/: 51_uml-ac-to-aa-3.bz2
> > >         Moved part of it in the tux directory so it can compile
> > >         without tux (in reality I got errno compilation error
> > >         but it's low prio and I'll sort it out later, Jeff Dike any
> > >         hint is welcome ;).
> > 
> > This is the patch I sent to Alan a while back which works around the problem.
> > 
> > rmk suggested a better way which I'll add at some point.
> > 
> > 				Jeff
> > 
> > 
> > diff -Naur -X exclude-files ac_cur/arch/um/Makefile ac/arch/um/Makefile
> > --- ac_cur/arch/um/Makefile	Mon Jul  9 13:05:03 2001
> > +++ ac/arch/um/Makefile	Mon Jul  9 13:26:21 2001
> > @@ -20,6 +20,8 @@
> >  LINK_PROFILE = $(PROFILE) -Wl,--wrap,__monstartup
> >  endif
> >  
> > +CFLAGS := $(subst -fno-common,,$(CFLAGS))
> > +
> >  SUBDIRS += $(ARCH_DIR)/fs $(ARCH_DIR)/drivers $(ARCH_DIR)/kernel \
> >  	$(ARCH_DIR)/sys-$(SUBARCH)
> 
> works fine thanks! Of course I agree with rmk it would be better not to

I should have said "compiles" fine (not "works" fine :).

__initdata is broken in uml and the kernel deadlocks because the wait
list is empty in complete() despite wait_for_completion actually
registered correctly into it. This because wait_for_completion runs in
a different address space than complete() and the virtual memory is not
shared across the two address spaces (it is not rempped in a MAP_SHARED
so it generates a cow). The registration is basically only private to
the entity that is registrating and it will never get visible to the
waker task that will do nothing. This is a severe bug not just for the
completion code in 2.4.7. here the fix (plus the ptrace bit):

--- ./arch/um/kernel/ptrace.c.~1~	Fri Jul 20 17:23:16 2001
+++ ./arch/um/kernel/ptrace.c	Fri Jul 20 17:43:56 2001
@@ -43,7 +43,7 @@
 	if (request == PTRACE_ATTACH) {
 		if (child == current)
 			goto out_tsk;
-		if ((!child->dumpable ||
+		if ((!ptrace_dumpable(child) ||
 		     (current->uid != child->euid) ||
 		     (current->uid != child->suid) ||
 		     (current->uid != child->uid) ||
--- ./arch/um/link.ld.in.~1~	Fri Jul 20 17:23:16 2001
+++ ./arch/um/link.ld.in	Mon Jul 23 03:06:40 2001
@@ -45,7 +45,6 @@
   . = ALIGN(4096);		/* Init code and data */
   __init_begin = .;
   .text.init : { *(.text.init) }
-  .data.init : { *(.data.init) }
   . = ALIGN(16);
   __setup_start = .;
   .setup.init : { *(.setup.init) }
@@ -92,6 +91,7 @@
     . = ALIGN(16384);		/* init_task */
     *(.data.init_task)
     *(.data)
+    *(.data.init)
     *(.gnu.linkonce.d*)
     CONSTRUCTORS
   }


(I didn't update the init_begin/end logic since there's no logic at all
in uml because we don't free that memory anyways so there's no side
effect because of that change)

> disable -fno-common but this is ok for now ;) (after all we would catch
> any potential important name collision during the compiles of the other
> targets)
> 
> Andrea


Andrea

  parent reply	other threads:[~2001-07-23  1:11 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-19 22:45 2.4.7pre8aa1 Jeff Dike
2001-07-20  1:37 ` 2.4.7pre8aa1 Andrea Arcangeli
2001-07-20  0:42   ` 2.4.7pre8aa1 Jeff Dike
2001-07-23  1:11   ` Andrea Arcangeli [this message]
2001-07-23  3:49     ` 2.4.7pre8aa1 Jeff Dike
  -- strict thread matches above, loose matches on Subject: below --
2001-07-19 18:38 2.4.7pre8aa1 Andrea Arcangeli

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=20010723031146.D23517@athlon.random \
    --to=andrea@suse.de \
    --cc=jdike@karaya.com \
    --cc=linux-kernel@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