[realtek] SIOCSIFFLAGS: Cannot allocate memory [please? I have tried everything!]

Justin Stockwell justinps@bigpond.net.au
Sat, 24 Feb 2001 20:15:37 +1000


Hi all.

I know this may have been dealt with a while back (I found an old post
via google), but I searched through the archives but could not find
any information relevant to my problem.

I have a Pentium 90 with 16MB RAM and 20MB swap running a minimal
Slackware 7.0 install with the 2.2.13 kernel. I have 2 RTL8139 based
cards, both using the driver loaded at boot as a module.

Ok, the problem is, I cannot bring up both cards at any one time. If i
try I get:

SIOCSIFFLAGS: Cannot allocate memory

If I force eth0 down, I can get eth1 up, and vice-versa, but try to
get both
up and I get that error.

In the post I found at
http://www.geocrawler.com/mail/msg.php3?msg_id=3963652&list=45
it detailed how to change the value of  the line "#define
RX_BUF_LEN_IDX" in the source to 2, reducing the size of the
in-memory-receive-ring. So I changed it to 2(32K), no change. Changed
it to 1(16K), no change. Changed it to 0(8K), and it worked! YAY I
thought, and went to bed happy. Then when I got up and re-booted, it
stopped working and will not go again.

In between each change I just used 'make modules' & 'make
modules_install' in the /usr/src/linux dir. Is that the easiest way to
compile in the change?

The current driver is v1.07, do I need to go throught the pain of
upgrading it? Any ideas as to how I may solve this? It is driving me
mad! You guys are my last hope!  :)

Thanks and regards,
Justin.