Projects
openEuler:Mainline
isula-build
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 203
View file
_service:tar_scm_kernel_repo:isula-build.spec
Changed
@@ -2,7 +2,7 @@ Name: isula-build Version: 0.9.6 -Release: 14 +Release: 15 Summary: A tool to build container images License: Mulan PSL V2 URL: https://gitee.com/openeuler/isula-build @@ -85,6 +85,12 @@ /usr/share/bash-completion/completions/isula-build %changelog +* Wed Dec 07 2022 jingxiaolu <lujingxiao@huawei.com> - 0.9.6-15 +- Type:bugfix +- CVE:NA +- SUG:restart +- DESC:add read lock in load/import/pull to fix GC preempts to exit subprocess + * Wed Nov 23 2022 Lixiang <cooper.li@huawei.com> - 0.9.6-14 - Type:bugfix - CVE:NA
View file
_service:recompress:tar_scm_kernel_repo:patch.tar.gz/0128-add-read-lock-in-load-import-and-pull-to-fix-the-pro.patch
Added
@@ -0,0 +1,57 @@ +From f8952b39aa9251b7a46fcaf894a1afd9c0a2d5de Mon Sep 17 00:00:00 2001 +From: daisicheng <daisicheng@huawei.com> +Date: Tue, 6 Dec 2022 10:41:34 +0800 +Subject: [PATCH] add read lock in load, import and pull to fix the problem + that GC preempts to exit subprocess + +--- + daemon/import.go | 3 +++ + daemon/load.go | 3 +++ + daemon/pull.go | 3 +++ + 3 files changed, 9 insertions(+) + +diff --git a/daemon/import.go b/daemon/import.go +index 21ab729..a0a475d 100644 +--- a/daemon/import.go ++++ b/daemon/import.go +@@ -38,6 +38,9 @@ import ( + + // Import an image from a tarball + func (b *Backend) Import(req *pb.ImportRequest, stream pb.Control_ImportServer) error { ++ b.daemon.RLock() ++ defer b.daemon.RUnlock() ++ + var ( + srcRef types.ImageReference + ctx = stream.Context() +diff --git a/daemon/load.go b/daemon/load.go +index 2d0c154..c071374 100644 +--- a/daemon/load.go ++++ b/daemon/load.go +@@ -79,6 +79,9 @@ func (b *Backend) getLoadOptions(req *pb.LoadRequest) (LoadOptions, error) { + + // Load loads the image + func (b *Backend) Load(req *pb.LoadRequest, stream pb.Control_LoadServer) error { ++ b.daemon.RLock() ++ defer b.daemon.RUnlock() ++ + logrus.WithFields(logrus.Fields{ + "LoadID": req.GetLoadID(), + }).Info("LoadRequest received") +diff --git a/daemon/pull.go b/daemon/pull.go +index 90be2a9..dc8af03 100644 +--- a/daemon/pull.go ++++ b/daemon/pull.go +@@ -40,6 +40,9 @@ type pullOptions struct { + + // Pull receives a pull request and pull the image from remote repository + func (b *Backend) Pull(req *pb.PullRequest, stream pb.Control_PullServer) error { ++ b.daemon.RLock() ++ defer b.daemon.RUnlock() ++ + logrus.WithFields(logrus.Fields{ + "PullID": req.GetPullID(), + "ImageName": req.GetImageName(), +-- +2.34.1 +
View file
_service:tar_scm_kernel_repo:VERSION-vendor
Changed
@@ -1 +1 @@ -0.9.6-14 +0.9.6-15
View file
_service:tar_scm_kernel_repo:git-commit
Changed
@@ -1 +1 @@ -e4b5a3bee5a69df32fb60b5eb8c28e1e8a39b59b +a5b09eac902299ff56b460324b6cb4db18a16a25
View file
_service:tar_scm_kernel_repo:series.conf
Changed
@@ -36,3 +36,4 @@ patch/0125-fix-the-possible-file-leakage-problem-in-util-cipher.patch patch/0126-improve-security-compile-option-of-isula-build-binar.patch patch/0127-Fix-the-problem-that-the-var-lib-isula-build-storage.patch +patch/0128-add-read-lock-in-load-import-and-pull-to-fix-the-pro.patch
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.