[comp.os.os2.misc] Undocumented MEMMAN switch LP

backman@vaxeline.ftp.com (Larry Backman) (03/16/91)

I have a very stable NFS IFS which suddenly developed problems
under IBM EE1.3.  The problems are dramatic, the machine GP's when
large programs are launched froma network drive.

I had seen and fixed the same problems 6-9 months ago; in brief
they were caused by OS/2 handing the IFS (and protocol stack below)
it a stack of only 5-700 bytes.

The problem under 1.3 exhibits the same symptoms; I am 90% sure
that OS/2 1.3 takes just a little more stack space before it
hands off requests to the IFS, which subsequently GP's.

A comment was made on one of the OS/2 newsgroups about IBM's own
TCP/IP NFS client exhibiting the exact behavior.  The IBM TCP
group in Raleigh suggested using the undocumented LP switch
to the MEMMAN statement in config.sys

MEMMAN=SWAP,MOVE,LP

to force OS/2 1.3 to "lauch network programs" as they were
in 1.2.

I have documented the probelm in release notes; there seems no
easy way to fix my product at the current time other than to
document around this.

The question to the net, and more specifically, to the Microsoft
& IBM developers who read this group is; what is this switch
and what ramifications does using it have on the rest of the 
OS/2 machine?




					Larry Backman
					backman@ftp.com

db3l@arnor.UUCP (David Bolen) (03/21/91)

In article <1342@vaxeline.ftp.com> backman@vaxeline.ftp.com (Larry Backman) writes:

>I have a very stable NFS IFS which suddenly developed problems
>under IBM EE1.3.  The problems are dramatic, the machine GP's when
>large programs are launched froma network drive.
>
> (...)
>
>A comment was made on one of the OS/2 newsgroups about IBM's own
>TCP/IP NFS client exhibiting the exact behavior.  The IBM TCP
>group in Raleigh suggested using the undocumented LP switch
>to the MEMMAN statement in config.sys
>
>MEMMAN=SWAP,MOVE,LP
>
>to force OS/2 1.3 to "lauch network programs" as they were
>in 1.2.

Well, actually I don't think I've heard of the IBM NFS client exhibiting
the same behavior you describe, in as far as I'm pretty sure it wasn't
generating a GP, but it was definitely hanging the entire system at times
when run under 1.3.  (Of course, I might not have heard about the GPs)

What I believe happened was that for improved performance of loading network
applications (which is indeed significant in 1.3), the loader is serialized.
In general this works fine, but breaks down when an IFS itself will require
the use of the loader to load additional support.  If the loader tries to load
something from an IFS and the IFS itself needs some local support (like a DLL)
loaded, then the system will hang (in a classic "deadlock" condition).

The "LP" option puts stuff back to the way they were in 1.2.  It shouldn't
have any strange affect on anything except for the fact that you will be
giving up the performance improvements for loading network programs that was
implemented in 1.3.

Now it's certainly possible that since you are seeing a GP, you are also
running into some other problem, such as the stack space you mention.  The
IBM NFS client requires very little ring 0 stack space, so I don't think we
would have noticed if the available space had dropped a bit with 1.3.

--
-- David
--
/-----------------------------------------------------------------------\
 \                             David Bolen                             /
  |    Laboratory Automation, IBM Thomas J. Watson Research Center    |
 /              P.O. Box 218, Yorktown Heights, NY  10598              \
| - - - - - - - - - - - -  M i t h r a n d i r  - - - - - - - - - - - - |
| Internet : db3l@ibm.com                    | Bitnet : db3l@yktvmv     |
| Usenet   : uunet!bywater!arnor!larios!db3l | Phone  : (914) 945-1940  |
|   /---------------------------------------------------------------\   |
 \-( All comments/opinions are mine and don't represent those of IBM )-/
    \---------------------------------------------------------------/