public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Mike Frysinger" <vapier@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/openrc:master commit in: net/
Date: Tue, 28 Jun 2011 04:08:50 +0000 (UTC)	[thread overview]
Message-ID: <c427d3c1fec89f6a9281dccdc123bad73af80804.vapier@gentoo> (raw)

commit:     c427d3c1fec89f6a9281dccdc123bad73af80804
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 28 04:02:11 2011 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Tue Jun 28 04:02:11 2011 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git;a=commit;h=c427d3c1

net: ccwgroup: smooth up/down process

We need to bring the link up ourselves after we've properly configured
the device.  The common code tries to bring the link up itself, but it
does so before things are configured, and so it ends up failing.

When shutting down, we need to wait for the kernel to finish destroying
the interface.  Otherwise, when doing a restart, openrc is quick enough
to tell the kernel to destroy things, but then start trying to bring it
back up before the kernel has finished.

X-Gentoo-Bug: 367467
X-Gentoo-Bug-URL: http://bugs.gentoo.org/367467
Signed-off-by: Mike Frysinger <vapier <AT> gentoo.org>

---
 net/ccwgroup.sh |   14 ++++++++++++--
 1 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/net/ccwgroup.sh b/net/ccwgroup.sh
index 248b159..60cd25f 100644
--- a/net/ccwgroup.sh
+++ b/net/ccwgroup.sh
@@ -58,6 +58,11 @@ ccwgroup_pre_start()
 		echo "${val}" > /sys/devices/${ccw_type}/${first}/${var}
 	done
 	eend $?
+
+	# Now that we've properly configured the device, we can run
+	# bring the interface up.  Common code tried to do this already,
+	# but it failed because we didn't setup sysfs yet.
+	_up
 }
 
 ccwgroup_pre_stop()
@@ -88,9 +93,14 @@ ccwgroup_post_stop()
 	local device="$(service_get_value ccwgroup_device)"
 	[ -z "${device}" ] && return 0
 	local ccw_type="$(service_get_value ccwgroup_type)"
+	local path="/sys/devices/${ccw_type}/${device}"
 
 	einfo "Disabling ccwgroup/${ccw_type} on ${IFACE}"
-	echo "0" >/sys/devices/${ccw_type}/"${device}"/online
-	echo "1" >/sys/devices/${ccw_type}/"${device}"/ungroup
+	if echo "0" >"${path}"/online &&
+	   echo "1" >"${path}"/ungroup ; then
+		# The device doesn't disappear right away which breaks
+		# restart, or a quick start up, so wait around.
+		while [ -e "${path}" ] ; do :; done
+	fi
 	eend $?
 }



             reply	other threads:[~2011-06-28  4:09 UTC|newest]

Thread overview: 69+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-28  4:08 Mike Frysinger [this message]
  -- strict thread matches above, loose matches on Subject: below --
2013-02-17 21:39 [gentoo-commits] proj/openrc:master commit in: net/ William Hubbs
2012-12-21 22:45 William Hubbs
2012-12-20 21:28 Robin H. Johnson
2012-11-10 20:58 William Hubbs
2012-11-07  1:45 Robin H. Johnson
2012-11-07  1:45 Robin H. Johnson
2012-11-06 23:23 Robin H. Johnson
2012-11-06 23:19 Robin H. Johnson
2012-11-06 23:19 Robin H. Johnson
2012-10-17 18:51 William Hubbs
2012-10-11  3:57 Robin H. Johnson
2012-10-11  3:57 Robin H. Johnson
2012-10-10  0:11 Robin H. Johnson
2012-09-07 19:57 William Hubbs
2012-07-04 14:20 William Hubbs
2012-06-07  5:36 William Hubbs
2012-05-03 20:43 Robin H. Johnson
2012-04-24  3:32 Christian Ruppert
2012-04-03 21:31 Robin H. Johnson
2012-04-02  4:28 William Hubbs
2012-03-11 19:55 Robin H. Johnson
2012-03-02 19:55 Robin H. Johnson
2012-02-09  9:43 Robin H. Johnson
2012-02-09  9:40 Robin H. Johnson
2012-01-25 18:47 Robin H. Johnson
2012-01-16 17:33 Robin H. Johnson
2012-01-13  4:39 Robin H. Johnson
2012-01-07 21:56 William Hubbs
2012-01-07 21:56 William Hubbs
2012-01-06 21:08 William Hubbs
2012-01-04 21:38 Mike Frysinger
2011-12-30  1:22 William Hubbs
2011-12-30  0:11 William Hubbs
2011-12-28 20:32 Robin H. Johnson
2011-12-27  2:01 Robin H. Johnson
2011-12-27  1:51 Robin H. Johnson
2011-12-27  1:24 Robin H. Johnson
2011-12-27  1:09 Robin H. Johnson
2011-12-21  8:11 Robin H. Johnson
2011-12-21  8:11 Robin H. Johnson
2011-12-21  8:11 Robin H. Johnson
2011-12-13  8:43 Robin H. Johnson
2011-12-13  6:53 Robin H. Johnson
2011-12-13  6:38 William Hubbs
2011-12-13  3:20 Robin H. Johnson
2011-12-13  3:20 Robin H. Johnson
2011-12-10  4:12 William Hubbs
2011-12-10  2:59 William Hubbs
2011-11-23 14:26 William Hubbs
2011-11-22 15:14 William Hubbs
2011-10-07 21:47 Robin H. Johnson
2011-09-21 11:29 Christian Ruppert
2011-09-21  1:58 Christian Ruppert
2011-09-18 22:04 Christian Ruppert
2011-09-18 12:45 Christian Ruppert
2011-09-16 23:14 Christian Ruppert
2011-09-16 22:18 Christian Ruppert
2011-09-16 21:48 Christian Ruppert
2011-07-18 23:57 Robin H. Johnson
2011-05-16 19:58 William Hubbs
2011-05-16 13:23 Anthony G. Basile
2011-05-16  5:22 Mike Frysinger
2011-04-07 12:51 William Hubbs
2011-03-27 20:46 William Hubbs
2011-03-18 18:25 Mike Frysinger
2011-02-21  9:56 Robin H. Johnson
2011-02-12 19:37 William Hubbs
2011-02-05 13:28 William Hubbs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c427d3c1fec89f6a9281dccdc123bad73af80804.vapier@gentoo \
    --to=vapier@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox