Linux PARISC architecture development
 help / color / mirror / Atom feed
From: Carlos O'Donell <carlos@baldric.uwo.ca>
To: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: Randolph Chung <randolph@tausq.org>, parisc-linux@lists.parisc-linux.org
Subject: Re: [parisc-linux] what's up with the ipc syscalls?
Date: Tue, 11 Nov 2003 16:46:10 -0500	[thread overview]
Message-ID: <20031111214610.GJ18512@systemhalted> (raw)
In-Reply-To: <20031110234414.GA27527@solo.franken.de>

> I had some thoughts about the conversion stuff, I've added to work
> around problems introduced because of the change of some structures in
> glibc/kernel. I finally realized, that these conversion only works,
> if the "old glibc" is still installed together with the old binary.
> That's because the newer glibcs don't set the IPC_64 bit when doing 
> the syscall, but the old binary still uses the wrong structs, so the
> conversion routine never triggers. I think it's really time to remove that
> crap. Below is an compiled but not booted patch, which removes it and also
> forward ports the necessary bits in ipc/util.c from 2.4. 

The following things confuse me.

a. Our glibc never set IPC_64, we had pass-thru assembly syscall
   wrappers. Why? Because we don't have an IPC multiplexor, none of the
   generic glibc code can be used by hppa.

So I don't understand some of your comments about "old glibc setting
IPC_64."

> If someone also wants to change glibc, feel free. I still think changing
> glibc is a bad idea, because this new glibc won't work with a current 2.4
> kernel.

I believed we had the following scenario:

a. Old glibc never called with IPC_64.
b. Kernel turned IPC_64 on for us so we get the new style structs.
c. Apps get new style structs without calling IPC_64.

Now we wish to have the hack in the kernel removed, but apps exist that
expect newstyle structs without calling IPC_64. Thus glibc has to
call the syscall with IPC_64 to get the right value back to userspace.

AFAIK the following is required:

a. Remove kernel hacks (Thanks Thomas!).
b. Add glibc code to turn IPC_64 on for all the afflicted syscalls.
c. Eventually when all the apps disappear we can toss out the code from
   glibc.

Thomas, did I get this right?

Cheers,
Carlos.

  parent reply	other threads:[~2003-11-11 21:51 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-11-01  8:24 [parisc-linux] what's up with the ipc syscalls? Randolph Chung
2003-11-02 18:01 ` Thomas Bogendoerfer
2003-11-02 18:12   ` Randolph Chung
2003-11-02 21:42     ` Thomas Bogendoerfer
2003-11-02 21:55       ` Randolph Chung
2003-11-03  8:59         ` Thomas Bogendoerfer
2003-11-02 22:56       ` Carlos O'Donell
2003-11-03  8:56         ` Thomas Bogendoerfer
2003-11-03 21:41           ` Carlos O'Donell
2003-11-10 23:44             ` Thomas Bogendoerfer
2003-11-11 20:41               ` Joel Soete
2003-11-11 21:46               ` Carlos O'Donell [this message]
2003-11-12 15:32                 ` Thomas Bogendoerfer
2003-11-14  0:35                   ` Carlos O'Donell
2003-11-12 19:54                 ` JSO

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=20031111214610.GJ18512@systemhalted \
    --to=carlos@baldric.uwo.ca \
    --cc=parisc-linux@lists.parisc-linux.org \
    --cc=randolph@tausq.org \
    --cc=tsbogend@alpha.franken.de \
    /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