The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: j_hoppe@t-online.de (Jörg Hoppe)
Subject: [TUHS] New patch for 2.11BSD on PDP-11: network DEUNA does not respond to ethernet broadcasts
Date: Fri, 07 Aug 2009 11:29:21 +0200	[thread overview]
Message-ID: <4A7BF3F1.9060104@t-online.de> (raw)


I found and patched an error in the network driver for UNIBUS ethernet 
controllers
DEUNA/DELUA in 2.11BSD for PDP-11.

Error reproduction:
--------------------------
Build 2.11 BSD with ethernet/TCP/IP support over DEUNA/DELUA controller.
Configure the network.
Boot up 2.11 BSD, switch to multiuser mode.
Wait for 15 Minutes, until all ARP caches in the system are aged out.
Try to ping the PDP-11 from a network node, which is NOT listed anywhere 
in the
PDP-11's network configuration files. Ping will fail.
Important: since arp requests are also arp responses, do not ping the 
test node from your
PDP-11. The test node may not be contacted by the PDP-11!
Before testing, verify on the test node that the PDP-11 is unkown. The 
command "arp -a" must not display the PDP-11 yet.
You can clean the test node's arp cache by executing "arp -d *".

This can also be reproduced in SimH,
for example with the installation downloadable at
/www.ak6dn.com/PDP-11/2.11BSD/


Error explanation:
--------------------
The DEUNA/DELUA does not answer ARP requests, so other network nodes
can not get the PDP-11's ethernet MACID and can not send anything to it.
The DEUNA/DELUA does not answer ARP because it does not receive ethernet 
broadcast packets
(those addressed to MACID FF:FF:FF:FF:FF:FF).
And it is not receiving broadcasts, because the DELUA driver in 
/sys/pdpif/if_de.c
did not set up the DELUA's packet filter to receive FF:FF:FF:FF:FF:FF.

Error patch
---------------
In /sys/pdpif/if_de.c , the DEUNA/DELUA must be programmed to receive 
ethernet broadcast pakets.
The good way would be to explicitly add MACID FF:FF:FF:FF:FF:FF to the 
filter.
The fast and dirty way was to program the DELUA to receive ALL multicasts,
 by setting one more bit in the mode register:
In /sys/pdpif/if_de.c, change line
        ds->ds_pcbb.pcbb2 = MOD_TPAD|MOD_HDX;
into
        ds->ds_pcbb.pcbb2 = MOD_TPAD|MOD_HDX|MOD_ENAL;


Status
-----------------------------
This is a major bug, as it prevents the PDP-11 under 2.11BSD to run as a 
server.
It's hard to believe that it is still there.
In the typical quick "boot up and ping someone" test, it is almost 
invisible.

The bug is not present in the DELQA driver "if_qe.c".

I did posted already to alt.sys.pdp11 newsgroup.
The error has been acknowledeged by one other user.

In the BSD patch archive, this bug seems not to be addressed.



regards

Joerg Hoppe



_______________________________________________
TUHS mailing list
TUHS at minnie.tuhs.org
https://minnie.tuhs.org/mailman/listinfo/tuhs



             reply	other threads:[~2009-08-07  9:29 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-07  9:29 Jörg Hoppe [this message]
2009-08-16  6:31 ` [TUHS] New patch for 2.11BSD on PDP-11: network DEUNA does not respond to ethernet broadcasts ... is SimH bug Jörg Hoppe

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=4A7BF3F1.9060104@t-online.de \
    --to=j_hoppe@t-online.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;
as well as URLs for NNTP newsgroup(s).