hooks/framebuffer: Only add simple/tiny framebuffer drivers
This should be enough for early boot purposes and if it's later found
not to be then consider replacing everything after fbcon with
"=drivers/video/fbdev".
configure_networking: Set interface MTU if provided by the DHCP server
When a DHCP server provides MTU settings to dhcpcd, it configures the
routes with the appropriate MTU value (due to "option interface_mtu" in
the configuration), but it does not configure the MTU setting in the
interface. So, we end up having a mismatch between interface and route
MTU setting, as observed below:
```
root@(none):/# ip a
1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 02:00:17:05:ee:5a brd ff:ff:ff:ff:ff:ff
altname enp0s3
inet 10.0.0.21/24 brd 10.0.0.255 scope global dynamic noprefixroute ens3
valid_lft 86048sec preferred_lft 75248sec
inet6 fe80::17ff:fe05:ee5a/64 scope link
valid_lft forever preferred_lft forever
root@(none):/# ip route show
default via 10.0.0.1 dev ens3 proto dhcp src 10.0.0.21 metric 1002 mtu 9000
10.0.0.0/24 dev ens3 proto dhcp scope link src 10.0.0.21 metric 1002 mtu 9000
169.254.0.0/16 dev ens3 proto dhcp scope link src 10.0.0.21 metric 1002 mtu 9000
```
If we go back to initramfs-tools 0.142ubuntu8 (which uses dhclient
instead of dhcpcd), the MTU settings will match:
```
root@(none):/# ip a
1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 9000 qdisc mq state UP group default qlen 1000
link/ether 02:00:17:05:ee:5a brd ff:ff:ff:ff:ff:ff
altname enp0s3
inet 10.0.0.21/24 brd 10.0.0.255 scope global ens3
valid_lft forever preferred_lft forever
inet6 fe80::17ff:fe05:ee5a/64 scope link
valid_lft forever preferred_lft forever
root@(none):/# ip route show
default via 10.0.0.1 dev ens3
10.0.0.0/24 dev ens3 proto kernel scope link src 10.0.0.21
169.254.0.0/16 dev ens3 scope link
```
Due to this mismatch when using dhcpcd, certain network activities might
fail. For example, in Oracle instances, a curl to the DataSource will
just hang:
When the iSCSI has a static address, the script `local-top/iscsi` from
open-iscsi creates a `/run/net-$DEVICE.conf` file for the iSCSI
interface. The existence of this file makes `configure_networking()`
skip configuring the BOOTIF later.
In case a network device is specific (e. g. by setting BOOTIF), wait for
exactly this device to be configured.
LP: #2056187
Signed-off-by: Benjamin Drung <email address hidden>