Patch "s390/qeth: handle sysfs error during initialization" has been added to the 4.11-stable tree
Subsystems (4)
This is a note to let you know that I've just added the patch titled
s390/qeth: handle sysfs error during initialization
to the 4.11-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
s390-qeth-handle-sysfs-error-during-initialization.patch
and it can be found in the queue-4.11 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Wed May 31 09:13:10 JST 2017
From: Ursula Braun <[email protected]>
Date: Wed, 10 May 2017 19:07:51 +0200
Subject: s390/qeth: handle sysfs error during initialization
From: Ursula Braun <[email protected]>
[ Upstream commit 9111e7880ccf419548c7b0887df020b08eadb075 ]
When setting up the device from within the layer discipline's probe routine, creating the layer-specific sysfs attributes can fail. Report this error back to the caller, and handle it by releasing the layer discipline.
--- drivers/s390/net/qeth_core_main.c | 4 +++- drivers/s390/net/qeth_core_sys.c | 2 ++ drivers/s390/net/qeth_l2_main.c | 5 ++++- drivers/s390/net/qeth_l3_main.c | 5 ++++- 4 files changed, 13 insertions(+), 3 deletions(-)
drivers/s390/net/qeth_core_main.c +3 -1
@@ -5661,8 +5661,10 @@ static int qeth_core_set_online(struct cif (rc) goto err; rc = card->discipline->setup (card->gdev); -if (rc) +if (rc) { +qeth_core_free_discipline (card); goto err; + } } rc = card->discipline->set_online (gdev); err:
drivers/s390/net/qeth_core_sys.c +2 -0
@@ -426,6 +426,8 @@ static ssize_t qeth_dev_layer2_store(str goto out; rc = card->discipline->setup (card->gdev); +if (rc) +qeth_core_free_discipline (card); out:mutex_unlock (&card->discipline_mutex);return rc ? rc : count;
drivers/s390/net/qeth_l2_main.c +4 -1
@@ -1009,8 +1009,11 @@ static int qeth_l2_stop(struct net_devicstatic int qeth_l2_probe_device (struct ccwgroup_device *gdev) {struct qeth_card *card =dev_get_drvdata (&gdev->dev); +int rc; -qeth_l2_create_device_attributes (&gdev->dev); + rc =qeth_l2_create_device_attributes (&gdev->dev); +if (rc) +return rc;INIT_LIST_HEAD (&card->vid_list);hash_init (card->mac_htable); card->options.layer2 =1 ;
drivers/s390/net/qeth_l3_main.c +4 -1
@@ -3153,8 +3153,11 @@ static int qeth_l3_setup_netdev(struct qstatic int qeth_l3_probe_device (struct ccwgroup_device *gdev) {struct qeth_card *card =dev_get_drvdata (&gdev->dev); +int rc; -qeth_l3_create_device_attributes (&gdev->dev); + rc =qeth_l3_create_device_attributes (&gdev->dev); +if (rc) +return rc; card->options.layer2 =0 ; card->info.hwtrap =0 ;return 0 ;
Patches currently in stable-queue which might be from [email protected] are
queue-4.11/smc-switch-to-usage-of-ib_pd_unsafe_global_rkey.patch queue-4.11/s390-qeth-avoid-null-pointer-dereference-on-osn.patch queue-4.11/net-smc-add-warning-about-remote-memory-exposure.patch queue-4.11/s390-qeth-handle-sysfs-error-during-initialization.patch queue-4.11/s390-qeth-add-missing-hash-table-initializations.patch