Browse code

Revendor runtime-spec

Signed-off-by: Darren Stahl <darst@microsoft.com>

Darren Stahl authored on 2017/05/10 10:25:18
Showing 4 changed files
... ...
@@ -62,8 +62,8 @@ github.com/miekg/pkcs11 df8ae6ca730422dba20c768ff38ef7d79077a59f
62 62
 
63 63
 # When updating, also update RUNC_COMMIT in hack/dockerfile/binaries-commits accordingly
64 64
 github.com/opencontainers/runc 992a5be178a62e026f4069f443c6164912adbf09
65
-github.com/opencontainers/runtime-spec v1.0.0-rc5 # specs
66 65
 github.com/opencontainers/image-spec f03dbe35d449c54915d235f1a3cf8f585a24babe
66
+github.com/opencontainers/runtime-spec d42f1eb741e6361e858d83fc75aa6893b66292c4 # specs
67 67
 
68 68
 github.com/seccomp/libseccomp-golang 32f571b70023028bd57d9288c20efbcb237f3ce0
69 69
 
... ...
@@ -60,10 +60,16 @@ When in doubt, start on the [mailing-list](#mailing-list).
60 60
 
61 61
 ### Weekly Call
62 62
 
63
-The contributors and maintainers of all OCI projects have a weekly meeting Wednesdays at 2:00 PM (USA Pacific).
64
-Everyone is welcome to participate via [UberConference web][uberconference] or audio-only: 415-968-0849 (no PIN needed.)
63
+The contributors and maintainers of all OCI projects have a weekly meeting on Wednesdays at:
64
+
65
+* 8:00 AM (USA Pacific), during [odd weeks][iso-week].
66
+* 5:00 PM (USA Pacific), during [even weeks][iso-week].
67
+
68
+There is an [iCalendar][rfc5545] format for the meetings [here](meeting.ics).
69
+
70
+Everyone is welcome to participate via [UberConference web][uberconference] or audio-only: +1 415 968 0849 (no PIN needed).
65 71
 An initial agenda will be posted to the [mailing list](#mailing-list) earlier in the week, and everyone is welcome to propose additional topics or suggest other agenda alterations there.
66
-Minutes are posted to the [mailing list](#mailing-list) and minutes from past calls are archived to the [wiki][runtime-wiki].
72
+Minutes are posted to the [mailing list](#mailing-list) and minutes from past calls are archived [here][minutes], with minutes from especially old meetings (September 2015 and earlier) archived [here][runtime-wiki].
67 73
 
68 74
 ### Mailing List
69 75
 
... ...
@@ -148,7 +154,10 @@ Read more on [How to Write a Git Commit Message][how-to-git-commit] or the Discu
148 148
 [dev-list]: https://groups.google.com/a/opencontainers.org/forum/#!forum/dev
149 149
 [how-to-git-commit]: http://chris.beams.io/posts/git-commit
150 150
 [irc-logs]: http://ircbot.wl.linuxfoundation.org/eavesdrop/%23opencontainers/
151
+[iso-week]: https://en.wikipedia.org/wiki/ISO_week_date#Calculating_the_week_number_of_a_given_date
152
+[minutes]: http://ircbot.wl.linuxfoundation.org/meetings/opencontainers/
151 153
 [oci]: https://www.opencontainers.org
154
+[rfc5545]: https://tools.ietf.org/html/rfc5545
152 155
 [runtime-wiki]: https://github.com/opencontainers/runtime-spec/wiki
153 156
 [uberconference]: https://www.uberconference.com/opencontainers
154 157
 
... ...
@@ -169,6 +169,9 @@ type Linux struct {
169 169
 	ReadonlyPaths []string `json:"readonlyPaths,omitempty"`
170 170
 	// MountLabel specifies the selinux context for the mounts in the container.
171 171
 	MountLabel string `json:"mountLabel,omitempty"`
172
+	// IntelRdt contains Intel Resource Director Technology (RDT) information
173
+	// for handling resource constraints (e.g., L3 cache) for the container
174
+	IntelRdt *LinuxIntelRdt `json:"intelRdt,omitempty"`
172 175
 }
173 176
 
174 177
 // LinuxNamespace is the configuration for a Linux namespace
... ...
@@ -247,9 +250,9 @@ type linuxBlockIODevice struct {
247 247
 // LinuxWeightDevice struct holds a `major:minor weight` pair for blkioWeightDevice
248 248
 type LinuxWeightDevice struct {
249 249
 	linuxBlockIODevice
250
-	// Weight is the bandwidth rate for the device, range is from 10 to 1000
250
+	// Weight is the bandwidth rate for the device.
251 251
 	Weight *uint16 `json:"weight,omitempty"`
252
-	// LeafWeight is the bandwidth rate for the device while competing with the cgroup's child cgroups, range is from 10 to 1000, CFQ scheduler only
252
+	// LeafWeight is the bandwidth rate for the device while competing with the cgroup's child cgroups, CFQ scheduler only
253 253
 	LeafWeight *uint16 `json:"leafWeight,omitempty"`
254 254
 }
255 255
 
... ...
@@ -262,9 +265,9 @@ type LinuxThrottleDevice struct {
262 262
 
263 263
 // LinuxBlockIO for Linux cgroup 'blkio' resource management
264 264
 type LinuxBlockIO struct {
265
-	// Specifies per cgroup weight, range is from 10 to 1000
265
+	// Specifies per cgroup weight
266 266
 	Weight *uint16 `json:"blkioWeight,omitempty"`
267
-	// Specifies tasks' weight in the given cgroup while competing with the cgroup's child cgroups, range is from 10 to 1000, CFQ scheduler only
267
+	// Specifies tasks' weight in the given cgroup while competing with the cgroup's child cgroups, CFQ scheduler only
268 268
 	LeafWeight *uint16 `json:"blkioLeafWeight,omitempty"`
269 269
 	// Weight per cgroup per device, can override BlkioWeight
270 270
 	WeightDevice []LinuxWeightDevice `json:"blkioWeightDevice,omitempty"`
... ...
@@ -457,8 +460,8 @@ type WindowsCPUResources struct {
457 457
 	Count *uint64 `json:"count,omitempty"`
458 458
 	// CPU shares (relative weight to other containers with cpu shares). Range is from 1 to 10000.
459 459
 	Shares *uint16 `json:"shares,omitempty"`
460
-	// Percent of available CPUs usable by the container.
461
-	Percent *uint8 `json:"percent,omitempty"`
460
+	// Specifies the portion of processor cycles that this container can use as a percentage times 100.
461
+	Maximum *uint16 `json:"maximum,omitempty"`
462 462
 }
463 463
 
464 464
 // WindowsStorageResources contains storage resource management settings.
... ...
@@ -481,7 +484,7 @@ type WindowsNetworkResources struct {
481 481
 type LinuxSeccomp struct {
482 482
 	DefaultAction LinuxSeccompAction `json:"defaultAction"`
483 483
 	Architectures []Arch             `json:"architectures,omitempty"`
484
-	Syscalls      []LinuxSyscall     `json:"syscalls"`
484
+	Syscalls      []LinuxSyscall     `json:"syscalls,omitempty"`
485 485
 }
486 486
 
487 487
 // Arch used for additional architectures
... ...
@@ -546,8 +549,15 @@ type LinuxSeccompArg struct {
546 546
 
547 547
 // LinuxSyscall is used to match a syscall in Seccomp
548 548
 type LinuxSyscall struct {
549
-	Names   []string           `json:"names"`
550
-	Action  LinuxSeccompAction `json:"action"`
551
-	Args    []LinuxSeccompArg  `json:"args"`
552
-	Comment string             `json:"comment"`
549
+	Names  []string           `json:"names"`
550
+	Action LinuxSeccompAction `json:"action"`
551
+	Args   []LinuxSeccompArg  `json:"args,omitempty"`
552
+}
553
+
554
+// LinuxIntelRdt has container runtime resource constraints
555
+// for Intel RDT/CAT which introduced in Linux 4.10 kernel
556
+type LinuxIntelRdt struct {
557
+	// The schema for L3 cache id and capacity bitmask (CBM)
558
+	// Format: "L3:<cache_id0>=<cbm0>;<cache_id1>=<cbm1>;..."
559
+	L3CacheSchema string `json:"l3CacheSchema,omitempty"`
553 560
 }
... ...
@@ -11,7 +11,7 @@ const (
11 11
 	VersionPatch = 0
12 12
 
13 13
 	// VersionDev indicates development branch. Releases will be empty string.
14
-	VersionDev = "-rc5"
14
+	VersionDev = "-rc5-dev"
15 15
 )
16 16
 
17 17
 // Version is the specification version that the package types support.