Re: ethtool documentation

Richard B. Johnson (root@chaos.analogic.com)
Tue, 6 Aug 2002 15:24:54 -0400 (EDT)


On Tue, 6 Aug 2002, Randy.Dunlap wrote:

>
> Abraham vd Merwe <abraham@2d3d.co.za> wrote:
> | What is the difference between the supported and advertising fields?
> | What is MII? (as in the SUPPORTED_MII feature?).
>
> MII: (is this a serious question ?):
> [from a National Semi. ethernet repeater design Application Note]
> The Medium Independent Interface, as specified in the IEEE 802.3u/D5.3
> standard, is designed to support the PHY/MAC interface.
>
> | > ETHTOOL_GEEPROM
> | > ETHTOOL_SEEPROM
> | >
> | > Get/set EEPROM data. These commands expect a 'struct ethtool_eeprom
> | > *'
> | > argument. This struct has a magic number, an offset and length
> | > pair, and a
> | > data field. If the offset+length are longer than the maximum size,
> | > the extra is silently ignored.
> |
> | Wouldn't it have been better to make this 'n character device which can
> | be read from / written to just like a normal file (/dev/nvram-like
> | interface) -
> | that way applications can actually use unused eeprom space.
>
> I wouldn't care for this. There's nothing 'normal' about this
> EEPROM space, and apps generally won't know where there might be
> some 'unused eeprom space'.
>
> --
> ~Randy

The EEPROM (SEEPROM) on these NICS is used to contain the startup
configuration bits and the IEEE Station Address. This must be a
unique number that is assigned so that there is no other such
number in (preferably) the world, and certainly in the LAN.
If you let a user write to this area, you will allow the user
to destroy the connectivity on a LAN.

If you provide an ioctl() to write new SEEPROM contents, it had
better be disabled in code that user's (any, including root)
can execute because, if caught, your company may lose it's IEEE
Station Addresses and never again be allowed to configure Ethernet
Controllers.

Because of this, there is no such thing as 'unused eeprom space' in
the Ethernet Controllers. Be careful about putting this weapon in
the hands of the 'public'. All you need is for one Linux Machine
on a LAN to end up with the same IEEE Station Address as another
on that LAN and connectivity to everything on that segment will
stop. You do this once at an important site and Linux will get a
very black eye.

Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/