def shutdown(self): """check orphan seglists on shutdown and return number of orphans""" log_segload.info("shutdown") for baddr in self.infos: info = self.infos[baddr] log_segload.warning("orphaned seglist: %s", info) # try to free list info.seglist.free() return len(self.infos)
def shutdown(self): """check orphan seglists on shutdown and return number of orphans""" log_segload.info("shutdown") for baddr in self.infos: info = self.infos[baddr] log_segload.warn("orphaned seglist: %s", info) # try to free list info.seglist.free() return len(self.infos)
def unload_seglist(self, seglist_baddr): """unregister given seglist baddr and free seglist. return True if seglist was unloaded""" if seglist_baddr not in self.infos: log_segload.error("unknown seglist at @%06x", seglist_baddr) return False info = self.infos[seglist_baddr] log_segload.info("unload seglist: %s", info) del self.infos[seglist_baddr] info.seglist.free() return True
def load_ami_seglist(self, ami_bin_file, lock=None): """load seglist, register it, and return seglist baddr or 0""" info = self.int_load_ami_seglist(ami_bin_file, lock) if info: baddr = info.seglist.get_baddr() self.infos[baddr] = info log_segload.info("loaded ami seglist: %s", info) return baddr else: log_segload.info("can't load ami seglist: %s", ami_bin_file) return 0
def load_sys_seglist(self, sys_bin_file): """load seglist, register it, and return seglist baddr or 0""" info = self.int_load_sys_seglist(sys_bin_file) if info: baddr = info.seglist.get_baddr() self.infos[baddr] = info log_segload.info("loaded sys seglist: %s", info) return baddr else: log_segload.info("can't load sys seglist: %s", sys_bin_file) return 0
def unload_seglist(self, seglist_baddr): """unregister given seglist baddr and free seglist. return True if seglist was unloaded""" if seglist_baddr not in self.infos: log_segload.error("unknown seglist at @%06x", seglist_baddr) return False info = self.infos[seglist_baddr] log_segload.info("unload seglist: %s", info) del self.infos[seglist_baddr] info.seglist.free() return True
def load_ami_seglist(self, ami_bin_file, lock=None): """load seglist, register it, and return seglist baddr or 0""" info = self.int_load_ami_seglist(ami_bin_file, lock) if info: baddr = info.seglist.get_baddr() self.infos[baddr] = info log_segload.info("loaded ami seglist: %s", info) return baddr else: log_segload.info("can't load ami seglist: %s", ami_bin_file) return 0
def load_sys_seglist(self, sys_bin_file): """load seglist, register it, and return seglist baddr or 0""" info = self.int_load_sys_seglist(sys_bin_file) if info: baddr = info.seglist.get_baddr() self.infos[baddr] = info log_segload.info("loaded sys seglist: %s", info) return baddr else: log_segload.info("can't load sys seglist: %s", sys_bin_file) return 0
def unregister_seglist(self, baddr): """remove custom seglist""" info = self.infos[baddr] log_segload.info("unregister seglist: %s", info) del self.infos[baddr]
def register_seglist(self, baddr): """register custom seglist""" info = SegLoadInfo(SegList(self.alloc, baddr)) log_segload.info("register seglist: %s", info) self.infos[baddr] = info
def unregister_seglist(self, baddr): """remove custom seglist""" info = self.infos[baddr] log_segload.info("unregister seglist: %s", info) del self.infos[baddr]
def register_seglist(self, baddr): """register custom seglist""" info = SegLoadInfo(SegList(self.alloc, baddr)) log_segload.info("register seglist: %s", info) self.infos[baddr] = info