net-lib: ibft_to_cmdline() fixes
Fix 3 issues in ibft_to_cmdline(): - unset local variables at the beginning of each loop - only write vlan.conf when we write out ip=xxx - when vlan id is 0, don't write out vlan.conf. Because 0 means untagged and we don't actually need vlan interface.master
parent
5ecc117a25
commit
f2cbd4cbd6
|
|
@ -203,11 +203,13 @@ fix_bootif() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ibft_to_cmdline() {
|
ibft_to_cmdline() {
|
||||||
local iface="" mac="" dev=""
|
local iface=""
|
||||||
local dhcp="" ip="" gw="" mask="" hostname=""
|
|
||||||
modprobe -q iscsi_ibft
|
modprobe -q iscsi_ibft
|
||||||
(
|
(
|
||||||
for iface in /sys/firmware/ibft/ethernet*; do
|
for iface in /sys/firmware/ibft/ethernet*; do
|
||||||
|
local mac="" dev=""
|
||||||
|
local dhcp="" ip="" gw="" mask="" hostname=""
|
||||||
|
|
||||||
[ -e ${iface}/mac ] || continue
|
[ -e ${iface}/mac ] || continue
|
||||||
mac=$(read a < ${iface}/mac; echo $a)
|
mac=$(read a < ${iface}/mac; echo $a)
|
||||||
[ -z "$mac" ] && continue
|
[ -z "$mac" ] && continue
|
||||||
|
|
@ -216,10 +218,6 @@ ibft_to_cmdline() {
|
||||||
[ -e /tmp/net.${dev}.has_ibft_config ] && continue
|
[ -e /tmp/net.${dev}.has_ibft_config ] && continue
|
||||||
|
|
||||||
[ -e ${iface}/dhcp ] && dhcp=$(read a < ${iface}/dhcp; echo $a)
|
[ -e ${iface}/dhcp ] && dhcp=$(read a < ${iface}/dhcp; echo $a)
|
||||||
if [ -e ${iface}/vlan ]; then
|
|
||||||
vlan=$(read a < ${iface}/vlan; echo $a)
|
|
||||||
echo "vlan=$vlan:$dev"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -n "$dhcp" ]; then
|
if [ -n "$dhcp" ]; then
|
||||||
echo "ip=$dev:dhcp"
|
echo "ip=$dev:dhcp"
|
||||||
|
|
@ -244,6 +242,11 @@ ibft_to_cmdline() {
|
||||||
ls -l ${iface} | vinfo
|
ls -l ${iface} | vinfo
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -e ${iface}/vlan ]; then
|
||||||
|
vlan=$(read a < ${iface}/vlan; echo $a)
|
||||||
|
[ "$vlan" -ne "0" ] && echo "vlan=$vlan:$dev"
|
||||||
|
fi
|
||||||
|
|
||||||
echo $mac > /tmp/net.${dev}.has_ibft_config
|
echo $mac > /tmp/net.${dev}.has_ibft_config
|
||||||
done
|
done
|
||||||
) >> /etc/cmdline.d/40-ibft.conf
|
) >> /etc/cmdline.d/40-ibft.conf
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue