From 4d485ef8eff5ea1f3c0b970d9ac34df1c1802c5b Mon Sep 17 00:00:00 2001 From: Faiyaz Ahmed Date: Wed, 16 Apr 2008 21:26:25 +0000 Subject: [PATCH] setname as part of set_resources. Better than stupid sleep while part of start(). Called from VServer.__do_chcontext(). --- sliver_vs.py | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/sliver_vs.py b/sliver_vs.py index 5167ba0..e7d86d8 100644 --- a/sliver_vs.py +++ b/sliver_vs.py @@ -156,19 +156,6 @@ class Sliver_VS(accounts.Account, vserver.VServer): time.sleep(delay) # VServer.start calls fork() internally vserver.VServer.start(self) - # Watch for 5 mins to see if slice is running before setting the name - # It would make sense to do this as part of start in VServer, but the name - # comes from NM. Also, the name would only change in NM. Name can only be - # set from root context, so overloading chcontext wont work; chcontext, setname - # will fail, and in the converse the context isn't setup in the kernel. - for i in range(0,60): - time.sleep(5) - if vserver.VServer.is_running(self): - # Set the vciVHI_CONTEXT to slice_id for - # fprobe-ulog to mark packets with. - logger.log("%s: Setting name to %s" % (self.name, self.slice_id),2) - self.setname(self.slice_id) - break else: logger.log('%s: not starting, is not enabled' % self.name) self.initscriptchanged = False @@ -232,6 +219,10 @@ class Sliver_VS(accounts.Account, vserver.VServer): (self.name, self.rspec['ip_addresses'])) self.set_ipaddresses_config(self.rspec['ip_addresses']) + if self.is_running(): + logger.log("%s: Setting name to %s" % (self.name, self.slice_id),2) + self.setname(self.slice_id) + if False: # Does not work properly yet. if self.have_limits_changed(): logger.log('%s: limits have changed --- restarting' % self.name) -- 2.43.0