Ack, applying. On Sat, 5 Jun 2010, Steffen Maier wrote:
There are two network device types 3088/08 and 3088/1f which can be either lcs or ctc. Therefore, both device drivers lcs and ctcm are loaded and the one that happens to get loaded first binds such devices. If the user specified the device to be handled by the other driver, then rebind the subchannels to the specified driver. Related: rhbz#557522 Related: rhbz#561814 --- loader/linuxrc.s390 | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/loader/linuxrc.s390 b/loader/linuxrc.s390 index 093e38d..8be39f1 100644 --- a/loader/linuxrc.s390 +++ b/loader/linuxrc.s390 @@ -1338,6 +1338,32 @@ function handle_subchannels() { else driver=$NETTYPE fi + # if necessary, + # rebind hybrid devices (3088/08 and 3088/1f) to user specified driver + local curdrv + curdrv=$(readlink /sys/bus/ccw/devices/$SCH_R_DEVBUSID/driver) + curdrv=${curdrv##*/} + if [ "$curdrv" = "lcs" -a "$NETTYPE" = "ctc" ]; then + sysecho /sys/bus/ccw/drivers/lcs/unbind "$SCH_R_DEVBUSID" + sysecho /sys/bus/ccw/drivers/ctcm/bind "$SCH_R_DEVBUSID" + fi + if [ "$curdrv" = "ctcm" -a "$NETTYPE" = "lcs" ]; then + sysecho /sys/bus/ccw/drivers/ctcm/unbind "$SCH_R_DEVBUSID" + sysecho /sys/bus/ccw/drivers/lcs/bind "$SCH_R_DEVBUSID" + fi + local channel2 + channel2=${SUBCHANNELS##*,} + curdrv=$(readlink /sys/bus/ccw/devices/$channel2/driver) + curdrv=${curdrv##*/} + if [ "$curdrv" = "lcs" -a "$NETTYPE" = "ctc" ]; then + sysecho /sys/bus/ccw/drivers/lcs/unbind "$channel2" + sysecho /sys/bus/ccw/drivers/ctcm/bind "$channel2" + fi + if [ "$curdrv" = "ctcm" -a "$NETTYPE" = "lcs" ]; then + sysecho /sys/bus/ccw/drivers/ctcm/unbind "$channel2" + sysecho /sys/bus/ccw/drivers/lcs/bind "$channel2" + fi + # create ccwgroup if sysecho /sys/bus/ccwgroup/drivers/${driver}/group "$SUBCHANNELS"; then udevadm settle case "$NETTYPE" in
-- David Cantrell <dcantrell@xxxxxxxxxx> Red Hat / Honolulu, HI _______________________________________________ Anaconda-devel-list mailing list Anaconda-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/anaconda-devel-list