| Age | Commit message (Collapse) | Author | Files | Lines |
|
We have use cases to use the MAC as host usb MAC, this saves the list
for usb setup service to use.
Tested: On a machine MAC addresses are correctly saved.
Change-Id: Ice027df4492a014c4630a9114b982ecd7093108c
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
We have cases where the error code can be set, and we just parse the
result file anyway as curl doesn't promote http_codes that aren't 200 to
errors.
Change-Id: Ie21b731c0fdf2d9fe1ed0d70bcee8e5580aa1323
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Our switches use LLDP packets to detect connectivity and miscabling
issues. This allows us to identify BMCs on the L2.
Change-Id: Ie88b73e65799d95efffdcdbc9571f91eba993b55
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
It's not $NCSI_IF in the build, it's $if_name
Change-Id: I90a296055aea779d8960407b4728b79ef4297895
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We still need a unique internal address for traffic between nodes.
Tested: on a setup verified that the ula address is set correctly
Change-Id: I811c29438a40cca07d4906ea988580718ca02863
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Change-Id: Iadee791641514ce1d181c56b4f59dbe7d50c3fc3
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Tested: links a correctly setup and bridged:
15: gusbem1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master l2br state UP mode DEFAULT group default qlen 1000
link/ether aa:53:c8:4b:be:05 brd ff:ff:ff:ff:ff:ff
16: enu1u5u1u3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master l2br state UNKNOWN mode DEFAULT group default qlen 1000
link/ether d6:c5:4e:6b:eb:e9 brd ff:ff:ff:ff:ff:ff
18: enu1u3u1u3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master l2br state UNKNOWN mode DEFAULT group default qlen 1000
link/ether 4a:1a:97:b1:79:1e brd ff:ff:ff:ff:ff:ff
Change-Id: Ia426d520e29c1d8bacf152ae445eb504e2930b45
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
The fixed NCSI device is not always up with a link local address when we
have smartnic USB NCSI configs now. We need to keep dhcrelay off until
we have a link local address or else it will spam the logs.
Tested: With and without a NCSI port being up to verify the relay gets
turned on properly when needed.
Change-Id: Iccfa7ceaae206ba1dde1f47389db11c79bf9adb2
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Change-Id: Icc1b3ebe5c1f9d5113d5047221fff7e17cdcb542
Signed-off-by: Sam Agazaryan <samagazaryan@google.com>
|
|
George Liu (1):
remove IPMI_CC
William A. Kennington III (1):
Remove powercycle units / scripts
Change-Id: I50475b6078b4f97d5aac5e4a3a8052931b14a683
Signed-off-by: Andrew Geissler <openbmcbump-github@yahoo.com>
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We don't use this in production, but we want local / mfg builds to have
them so testing environments can leverage IPv4.
Change-Id: I918c4cc342e35268e85352cef98375aabe0e0d5a
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Some of the routers in our labs don't understand how to route the entire
subnet to the primary neighbor for the network. We need to proxy all of
the neighbor entries for all nodes in the system, so the router can
forward all their traffic to us.
Change-Id: Ie125f8b0225cb992115a1fea6f7ce0fbef02d261
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
NICs and NCSI paths both need to start relays at runtime as the
interfaces come up. This turns the relay enabled into common bridge
infrastructure and unifies the disperate ncsi and nic logic.
This fixes bringing up dhcrelay on NCSI USB devices.
Change-Id: I84e80153852fb1ed5a610e139ee5b6536d59285b
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
These aren't useful as inputs to the system and so they should be
truncated from the output.
Change-Id: I670d9d427e3ce1270a480252580ff514a141ad48
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Change-Id: Ia2c14503c84038f34913850f4bf30b7cde74eca0
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Gaurav Gandhi (1):
Add support for setting VoutSetpoint and NominalTargetVout
Patrick Williams (1):
markdownlint: minor fixes
Willy Tu (1):
test: Fix test with read_array/append_array
Change-Id: I5fb1f3f712f7e3c58e008d9d62e60dceffce117e
Signed-off-by: Andrew Geissler <openbmcbump-github@yahoo.com>
|
|
Change-Id: I1d53510329749ff122c8a65157a72c8ff88bd306
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Add support for recognizing USB NICs that are part of our new series of
smart NICS. Support multiple NCSI paths in the existing NCSI logic, so
we can have multiple NICs side by side with working symmetric
addressing.
Change-Id: I864c9a949f086d4834f65674b4f52d491f43678b
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
There is no deletion netlink message when changing the src address, so
we might miss deleting the primary path in some cases. This one deletes
the primary path when the src address is changed.
Tested: on a system tested that the primary path is cleared when the
primary interfaces are down.
Change-Id: I2ed4abd058dedb5ba1167b7d247f52d403fad432
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Change-Id: I29a70b048042696d1f95b0fd697a79c973913c02
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Link with carrier down is unusable and we want to ignore the route for
fast failover.
Tested: route is marked as dead and is recovered when link gets
recovered.
Change-Id: I87116145f01feb2ec149c3b6b09306207ccce54e
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
This allows the connections to fail/restart quicker if a networking path
is down. From 15 retires (~15mins) to 8 retries (~1.7mins)
Change-Id: I84670262831222aebfd0e6be60145e1e5f09f949
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
This creates a special RA route oob-ip/124 ip so that tray can detect
whether the out-of-band IP is healthy or not. If the route exists then
it will prefer the oob as the src ip if metrics are same.
Tested: /124 route is added correctly. Tray can adjust the src IP based
on the route sent by the host. Tested both ncsi primary failover and
front primary failover for host and tray.
Change-Id: I59f93f5a69d90a48768f4b3efefdb5deead8a684
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
We want to ensure that DHCPv4 and ICMP4 are accepted by the BMC on the
front panel port in case we have a configuration where they are enabled.
They will not be processed on production configurations anyway.
Change-Id: I11e09e4f86b95536d3ad561c184d5fc7170595b5
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We want to ignore routes we have full contorl over, otherwise it will
cause unnecessary churn and keep resetting routes.
Change-Id: I4aaa934befe50876c68ea1c9e21ca9924022c723
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
This will sometimes causing the route not removing correctly if somehow
a reload is invoked after the route removal.
Change-Id: Icd365ccb299a1cb43bc37ef4735f20bc771ba5f9
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
The newest yocto version flags any assignment without a space around it
as a warning. The apply the recommended script[1] to fix it.
[1] https://github.com/shr-project/meta-webosose/blob/jansa/master/meta-webos/scripts/add-whitespace-around-assignment.sh
Change-Id: I93c715c38d3387fbef976452aefc3f0a7b50cab9
Signed-off-by: Ed Tanous <etanous@nvidia.com>
|
|
This new systemd target gbmc-bare-metal-prep can be used for any
preparation that must be done before the gbmc-bare-metal-active target
is enabled.
Tested:
Built a BMC image and confirmed the new target is present.
Change-Id: Ife6f61cdd10d3a7affa23884df160c79aa417e4f
Signed-off-by: John Wedig <johnwedig@google.com>
|
|
This avoid assign wrong IP to unrelated interfaces.
Tested: on a machine with just one ip but two interfaces verified that
the right device is set to the primary and src is correct.
Change-Id: I81dbc1ebab115cb5e4cdba80944cfcef7bd187d1
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
This add a dedicated table for front routing. So that the routing is
symmetric when primary ip is sideband.
Tested: verified that table is correctly configured and traffic is
routed accordingly. Verified that failover still works. Also tested
powercycle, reboot, networkctl reload/reconfigure, restart
gbmc-ip-monitor with different primary IPs.
Change-Id: I6c0ab41a3b21c15d7d546810129a967383a89654
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
We need to configure src IP based on the primary IP address from DHCP.
This makes sure that the outbounding traffic prefer that path.
Tested: Verified that primary IP gets the priortized route, verified
that failover still works, reloading + reconfigure and restarting
gbmc-ip-monitor works fine.
Change-Id: I36741ccd82a35c078e5a05d2499488cbc60cf7f1
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
In some cases we have IPs with exactly the same length, and we still
want to priortize the OOB one.
Tested: on a tray node verified that OOB ip is priortized.
Change-Id: I092ab2644fada2e265ab87308b261fb382201642
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Since we have a direct path and sideband path for networking now, we
need both to register as trusted internal paths when communicating with
BMCs inside the node.
Change-Id: I91d72e7cddf6c919422a4fcceec6b386bab2ea2b
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Without the metric, we can not determine if the route was intended to be
more strict based on our source policy. This fixes the logic to
guarantee that specific source routes for a gateway are preferred if an
interface has them.
Tested: Ran 4 powercycles and 3 reboots on a machine. Restarted
`gbmc-ip-monitor` and `systemd-networkd` a number of times to guarantee
stability in the result.
Change-Id: Ifb7b5d624d1e75070b3df00a57a074ba088a72d8
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We sometimes have nodes that misbehave on the bridge network and assign
an address that conflicts with other nodes. This is always buggy
behavior, and primary nodes closer to the network router should always
take precendence and not allow DAD failures to break their networking.
Change-Id: I08f85df21fe71de5d955c420b952cefb874f3bd9
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
If our BMC gets assigned a /64, we don't want to overlap its network
with the stateless one.
Change-Id: I9a69eb9ac1e1e56138e591a54715a15e5101e446
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We want to make sure we have the specific source routes configured
before the default route, as this will allow us to correctly determine
the right source address when setting the default.
Change-Id: I33fd170c31935fc2f65a8cce9206670b97de8831
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
NCSI interface should pick /76 src address and should ignore /64 src
address.
Tested: verified that outbounding failover is working, and both intf has
correct src address picked.
Change-Id: Ib2f24157e8edd0951598f9670ce90486f1db4840
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
We should have a newline between the two contents of the file or else
the systemd stanzas will be broken
Tested: Verified that tweaking this on a live image fixes it
Change-Id: I665f862bb63fe861c0a4eea21a5e500fd1c79398
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
We want to not only configure addresses but also set up the proper
RA advertisement parameters. This logic is the same between the bridge
static IP loading and the NCSI RA script. Consolidate into one function.
On top of this, we need to be able to load extra addresses at bootup.
The reload function will now consider lists of addresses in
`/run/gbmc-br-ips/*`
Change-Id: I3185fa5ade49d8d87de83ea3e3df60044a14ed78
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
This removes the route if we don't hear RS in 3mins. We keep sending RS
every 30s.
Tested: verified that route gets removed after 3mins and outbounding
traffc can work with the other route (tested by blocking nftables).
Verified that routes gets added back when unblocking the RS. Also tried
bringing down the interfaces and related route gets deleted (default
kernel behavior).
Change-Id: I29c3727ad624f20b6d501c218debb8ae2b1dc675
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
This picks address based on a lookup of the kernel tables, instead of
always picking the shortest prefix.
Tested: address is correctly picked based on the content.
Change-Id: If18a81a846297fb51f4af95b23ff4a810679fe51
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
We need this for our hybrid direct setup, where subordinate BMCs on the
gbmcbr network need packets routed from the OOB port.
Change-Id: Ie839266403226b1920252595c74e7c638c427143
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Reloads can fail if other reloads are in progress when they are
triggered, we need to make sure the retry logic applies to all reloads.
Change-Id: Ie8175a68ecda4bfe9a7d4f89dac649546eee907d
Signed-off-by: William A. Kennington III <wak@google.com>
|
|
Tested: The services are disabled correctly.
Change-Id: Ifa365c61a3b5d31ad82762f58b9318da1c65a794
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6291eeaf0ca7d4bd674bf0717f1234bfd757f6fe
|
|
Systemd 256 has issue with ndisc that local gateway is messed up, which
causes interface configuration to fail. The fix tries to reconfigure the
interface if that happens.
Also adds a timeout to ensure that we still proceed with doing RS/RA to
avoid regression.
Meanwhile the real underlay issue in systemd is not easy to root cause,
some upstream changes might be related but need time to investigate.
Tested: verified the script logic work, on a failed machine verified
that this can reconfigure the interface with no issue
Change-Id: Ie0acf183b055f2e293d8df8fcee325c083c6df1f
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
Gaurav Gandhi (1):
Add support for VoltageMargin setting
Change-Id: Id2774f2a9a5725e00c32ed050328199c30d0e026
Signed-off-by: Andrew Geissler <openbmcbump-github@yahoo.com>
|
|
Tested: Script is on the dev image.
Change-Id: Icdea4e1cc3aea4a1a70b9426a070e4fee815e3ad
Signed-off-by: Yuxiao Zhang <yuxiaozhang@google.com>
|
|
slpd-lite[1] is a home grown application within OpenBMC that does not
appear to get much use. There are other more full function options like
Avahi or LLDP now. The slpd-lite daemon provides an unauthenticated
network interface which was the result of a fairly severe PSIRT last
year[2].
Given the above, this application should not be included by default when
building OpenBMC.
Tested:
- Confirmed slpd application and service no longer in a Romulus image
[1]: https://github.com/openbmc/slpd-lite
[2]: https://github.com/openbmc/slpd-lite/security/advisories/GHSA-wmgv-jffg-v3xr
Change-Id: Ifd67651cb00a411bf12f0330c4b4fab626953361
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
|