[PATCH RFC] cmd: fix net list command

Michael Walle michael at walle.cc
Mon Nov 15 15:53:30 CET 2021


Am 2021-11-15 14:57, schrieb Tom Rini:
> On Mon, Nov 15, 2021 at 01:24:34PM +0100, Michael Walle wrote:
>> Am 2021-11-15 13:15, schrieb Marek Vasut:
>> > On 11/15/21 1:11 PM, Michael Walle wrote:
>> > > Don't get the MAC address by the environment, but by the platform data
>> > > of the udevice. This will fix "net list" if the MAC address is
>> > > randomly
>> > > generated and won't change behavior when linux is booted.
>> > >
>> > > Signed-off-by: Michael Walle <michael at walle.cc>
>> > > ---
>> > >
>> > > Hi,
>> > >
>> > > this is a proposal to fix the "net list" in a way that linux still
>> > > can have
>> > > its own fallback mechanism of MAC addresses even if the bootloader has
>> > > CONFIG_NET_RANDOM_ETHADDR enabled.
>> > >
>> > > The intention is to replace [1], where if I understood correctly, the
>> > > intention was to fix "net list".
>> > >
>> > > [1] https://lore.kernel.org/u-boot/3996ba2ee4e6ac136c0802dc0df4ef9b1750157c.1635506067.git.michal.simek@xilinx.com/
>> >
>> > Does that mean U-Boot and Linux will possibly each have different MAC
>> > address on the same device ? That is clearly wrong and not how it is
>> > supposed to work, U-Boot passes its ethaddr/ethNaddr settings to Linux
>> > so that they would have the same MAC address on the same device.
>> 
>> Yes they have different ones, but having a random mac address is  
>> wrong
>> in the first place. So IMHO it is more useful to dectect that in 
>> linux,
>> (and there was a good point that usually a user will look at dmesg and
>> not some u-boot output) than having two different random MAC 
>> addresses,
>> one for u-boot and one for linux.
>> 
>> Initially that random MAC address thing was supposed to get networking
>> running in u-boot if there is no ethaddr at all, eg. for network 
>> console.
>> Now we are passing this made up network address to linux, too. Why? 
>> Just
>> because it is wrong to have two different mac addresses? Some drivers
>> doesn't even probe without one. And we are just masking away this 
>> error.
>> You get this "two different mac addresses" between reboots. Which is 
>> also
>> wrong. This actually strenghten my opinion that this "feature" should
>> be an u-boot only thing.
> 
> Do you have some link explaining this use case more clearly, ie why
> U-Boot is using a random MAC being wrong?  We have a number of long
> standing use cases today where U-Boot generates and uses the random MAC
> and passes it to Linux and Linux would generate another random MAC, so
> we avoid that mismatch by making sure Linux does get the random MAC we
> generate.  The BeagleBoard xM is the first one that pops to mind for 
> me,
> but I believe it's typical on some classes of USB ethernet adapters.

Please see my previous response to Wolfgang.

-michael


More information about the U-Boot mailing list