github.com/metacubex/gvisor@v0.0.0-20240320004321-933faba989ec/pkg/sentry/fsimpl/proc/proc_state_autogen.go (about) 1 // automatically generated by stateify. 2 3 package proc 4 5 import ( 6 "context" 7 8 "github.com/metacubex/gvisor/pkg/state" 9 ) 10 11 func (r *fdDirInodeRefs) StateTypeName() string { 12 return "pkg/sentry/fsimpl/proc.fdDirInodeRefs" 13 } 14 15 func (r *fdDirInodeRefs) StateFields() []string { 16 return []string{ 17 "refCount", 18 } 19 } 20 21 func (r *fdDirInodeRefs) beforeSave() {} 22 23 // +checklocksignore 24 func (r *fdDirInodeRefs) StateSave(stateSinkObject state.Sink) { 25 r.beforeSave() 26 stateSinkObject.Save(0, &r.refCount) 27 } 28 29 // +checklocksignore 30 func (r *fdDirInodeRefs) StateLoad(ctx context.Context, stateSourceObject state.Source) { 31 stateSourceObject.Load(0, &r.refCount) 32 stateSourceObject.AfterLoad(func() { r.afterLoad(ctx) }) 33 } 34 35 func (r *fdInfoDirInodeRefs) StateTypeName() string { 36 return "pkg/sentry/fsimpl/proc.fdInfoDirInodeRefs" 37 } 38 39 func (r *fdInfoDirInodeRefs) StateFields() []string { 40 return []string{ 41 "refCount", 42 } 43 } 44 45 func (r *fdInfoDirInodeRefs) beforeSave() {} 46 47 // +checklocksignore 48 func (r *fdInfoDirInodeRefs) StateSave(stateSinkObject state.Sink) { 49 r.beforeSave() 50 stateSinkObject.Save(0, &r.refCount) 51 } 52 53 // +checklocksignore 54 func (r *fdInfoDirInodeRefs) StateLoad(ctx context.Context, stateSourceObject state.Source) { 55 stateSourceObject.Load(0, &r.refCount) 56 stateSourceObject.AfterLoad(func() { r.afterLoad(ctx) }) 57 } 58 59 func (ft *FilesystemType) StateTypeName() string { 60 return "pkg/sentry/fsimpl/proc.FilesystemType" 61 } 62 63 func (ft *FilesystemType) StateFields() []string { 64 return []string{} 65 } 66 67 func (ft *FilesystemType) beforeSave() {} 68 69 // +checklocksignore 70 func (ft *FilesystemType) StateSave(stateSinkObject state.Sink) { 71 ft.beforeSave() 72 } 73 74 func (ft *FilesystemType) afterLoad(context.Context) {} 75 76 // +checklocksignore 77 func (ft *FilesystemType) StateLoad(ctx context.Context, stateSourceObject state.Source) { 78 } 79 80 func (fs *filesystem) StateTypeName() string { 81 return "pkg/sentry/fsimpl/proc.filesystem" 82 } 83 84 func (fs *filesystem) StateFields() []string { 85 return []string{ 86 "Filesystem", 87 "devMinor", 88 } 89 } 90 91 func (fs *filesystem) beforeSave() {} 92 93 // +checklocksignore 94 func (fs *filesystem) StateSave(stateSinkObject state.Sink) { 95 fs.beforeSave() 96 stateSinkObject.Save(0, &fs.Filesystem) 97 stateSinkObject.Save(1, &fs.devMinor) 98 } 99 100 func (fs *filesystem) afterLoad(context.Context) {} 101 102 // +checklocksignore 103 func (fs *filesystem) StateLoad(ctx context.Context, stateSourceObject state.Source) { 104 stateSourceObject.Load(0, &fs.Filesystem) 105 stateSourceObject.Load(1, &fs.devMinor) 106 } 107 108 func (s *staticFile) StateTypeName() string { 109 return "pkg/sentry/fsimpl/proc.staticFile" 110 } 111 112 func (s *staticFile) StateFields() []string { 113 return []string{ 114 "DynamicBytesFile", 115 "StaticData", 116 } 117 } 118 119 func (s *staticFile) beforeSave() {} 120 121 // +checklocksignore 122 func (s *staticFile) StateSave(stateSinkObject state.Sink) { 123 s.beforeSave() 124 stateSinkObject.Save(0, &s.DynamicBytesFile) 125 stateSinkObject.Save(1, &s.StaticData) 126 } 127 128 func (s *staticFile) afterLoad(context.Context) {} 129 130 // +checklocksignore 131 func (s *staticFile) StateLoad(ctx context.Context, stateSourceObject state.Source) { 132 stateSourceObject.Load(0, &s.DynamicBytesFile) 133 stateSourceObject.Load(1, &s.StaticData) 134 } 135 136 func (i *InternalData) StateTypeName() string { 137 return "pkg/sentry/fsimpl/proc.InternalData" 138 } 139 140 func (i *InternalData) StateFields() []string { 141 return []string{ 142 "Cgroups", 143 } 144 } 145 146 func (i *InternalData) beforeSave() {} 147 148 // +checklocksignore 149 func (i *InternalData) StateSave(stateSinkObject state.Sink) { 150 i.beforeSave() 151 stateSinkObject.Save(0, &i.Cgroups) 152 } 153 154 func (i *InternalData) afterLoad(context.Context) {} 155 156 // +checklocksignore 157 func (i *InternalData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 158 stateSourceObject.Load(0, &i.Cgroups) 159 } 160 161 func (i *implStatFS) StateTypeName() string { 162 return "pkg/sentry/fsimpl/proc.implStatFS" 163 } 164 165 func (i *implStatFS) StateFields() []string { 166 return []string{} 167 } 168 169 func (i *implStatFS) beforeSave() {} 170 171 // +checklocksignore 172 func (i *implStatFS) StateSave(stateSinkObject state.Sink) { 173 i.beforeSave() 174 } 175 176 func (i *implStatFS) afterLoad(context.Context) {} 177 178 // +checklocksignore 179 func (i *implStatFS) StateLoad(ctx context.Context, stateSourceObject state.Source) { 180 } 181 182 func (i *subtasksInode) StateTypeName() string { 183 return "pkg/sentry/fsimpl/proc.subtasksInode" 184 } 185 186 func (i *subtasksInode) StateFields() []string { 187 return []string{ 188 "implStatFS", 189 "InodeAlwaysValid", 190 "InodeAttrs", 191 "InodeDirectoryNoNewChildren", 192 "InodeNotAnonymous", 193 "InodeNotSymlink", 194 "InodeTemporary", 195 "InodeWatches", 196 "OrderedChildren", 197 "subtasksInodeRefs", 198 "locks", 199 "fs", 200 "task", 201 "pidns", 202 "cgroupControllers", 203 } 204 } 205 206 func (i *subtasksInode) beforeSave() {} 207 208 // +checklocksignore 209 func (i *subtasksInode) StateSave(stateSinkObject state.Sink) { 210 i.beforeSave() 211 stateSinkObject.Save(0, &i.implStatFS) 212 stateSinkObject.Save(1, &i.InodeAlwaysValid) 213 stateSinkObject.Save(2, &i.InodeAttrs) 214 stateSinkObject.Save(3, &i.InodeDirectoryNoNewChildren) 215 stateSinkObject.Save(4, &i.InodeNotAnonymous) 216 stateSinkObject.Save(5, &i.InodeNotSymlink) 217 stateSinkObject.Save(6, &i.InodeTemporary) 218 stateSinkObject.Save(7, &i.InodeWatches) 219 stateSinkObject.Save(8, &i.OrderedChildren) 220 stateSinkObject.Save(9, &i.subtasksInodeRefs) 221 stateSinkObject.Save(10, &i.locks) 222 stateSinkObject.Save(11, &i.fs) 223 stateSinkObject.Save(12, &i.task) 224 stateSinkObject.Save(13, &i.pidns) 225 stateSinkObject.Save(14, &i.cgroupControllers) 226 } 227 228 func (i *subtasksInode) afterLoad(context.Context) {} 229 230 // +checklocksignore 231 func (i *subtasksInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 232 stateSourceObject.Load(0, &i.implStatFS) 233 stateSourceObject.Load(1, &i.InodeAlwaysValid) 234 stateSourceObject.Load(2, &i.InodeAttrs) 235 stateSourceObject.Load(3, &i.InodeDirectoryNoNewChildren) 236 stateSourceObject.Load(4, &i.InodeNotAnonymous) 237 stateSourceObject.Load(5, &i.InodeNotSymlink) 238 stateSourceObject.Load(6, &i.InodeTemporary) 239 stateSourceObject.Load(7, &i.InodeWatches) 240 stateSourceObject.Load(8, &i.OrderedChildren) 241 stateSourceObject.Load(9, &i.subtasksInodeRefs) 242 stateSourceObject.Load(10, &i.locks) 243 stateSourceObject.Load(11, &i.fs) 244 stateSourceObject.Load(12, &i.task) 245 stateSourceObject.Load(13, &i.pidns) 246 stateSourceObject.Load(14, &i.cgroupControllers) 247 } 248 249 func (fd *subtasksFD) StateTypeName() string { 250 return "pkg/sentry/fsimpl/proc.subtasksFD" 251 } 252 253 func (fd *subtasksFD) StateFields() []string { 254 return []string{ 255 "GenericDirectoryFD", 256 "task", 257 } 258 } 259 260 func (fd *subtasksFD) beforeSave() {} 261 262 // +checklocksignore 263 func (fd *subtasksFD) StateSave(stateSinkObject state.Sink) { 264 fd.beforeSave() 265 stateSinkObject.Save(0, &fd.GenericDirectoryFD) 266 stateSinkObject.Save(1, &fd.task) 267 } 268 269 func (fd *subtasksFD) afterLoad(context.Context) {} 270 271 // +checklocksignore 272 func (fd *subtasksFD) StateLoad(ctx context.Context, stateSourceObject state.Source) { 273 stateSourceObject.Load(0, &fd.GenericDirectoryFD) 274 stateSourceObject.Load(1, &fd.task) 275 } 276 277 func (r *subtasksInodeRefs) StateTypeName() string { 278 return "pkg/sentry/fsimpl/proc.subtasksInodeRefs" 279 } 280 281 func (r *subtasksInodeRefs) StateFields() []string { 282 return []string{ 283 "refCount", 284 } 285 } 286 287 func (r *subtasksInodeRefs) beforeSave() {} 288 289 // +checklocksignore 290 func (r *subtasksInodeRefs) StateSave(stateSinkObject state.Sink) { 291 r.beforeSave() 292 stateSinkObject.Save(0, &r.refCount) 293 } 294 295 // +checklocksignore 296 func (r *subtasksInodeRefs) StateLoad(ctx context.Context, stateSourceObject state.Source) { 297 stateSourceObject.Load(0, &r.refCount) 298 stateSourceObject.AfterLoad(func() { r.afterLoad(ctx) }) 299 } 300 301 func (i *taskInode) StateTypeName() string { 302 return "pkg/sentry/fsimpl/proc.taskInode" 303 } 304 305 func (i *taskInode) StateFields() []string { 306 return []string{ 307 "implStatFS", 308 "InodeAttrs", 309 "InodeDirectoryNoNewChildren", 310 "InodeNotAnonymous", 311 "InodeNotSymlink", 312 "InodeTemporary", 313 "InodeWatches", 314 "OrderedChildren", 315 "taskInodeRefs", 316 "locks", 317 "task", 318 } 319 } 320 321 func (i *taskInode) beforeSave() {} 322 323 // +checklocksignore 324 func (i *taskInode) StateSave(stateSinkObject state.Sink) { 325 i.beforeSave() 326 stateSinkObject.Save(0, &i.implStatFS) 327 stateSinkObject.Save(1, &i.InodeAttrs) 328 stateSinkObject.Save(2, &i.InodeDirectoryNoNewChildren) 329 stateSinkObject.Save(3, &i.InodeNotAnonymous) 330 stateSinkObject.Save(4, &i.InodeNotSymlink) 331 stateSinkObject.Save(5, &i.InodeTemporary) 332 stateSinkObject.Save(6, &i.InodeWatches) 333 stateSinkObject.Save(7, &i.OrderedChildren) 334 stateSinkObject.Save(8, &i.taskInodeRefs) 335 stateSinkObject.Save(9, &i.locks) 336 stateSinkObject.Save(10, &i.task) 337 } 338 339 func (i *taskInode) afterLoad(context.Context) {} 340 341 // +checklocksignore 342 func (i *taskInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 343 stateSourceObject.Load(0, &i.implStatFS) 344 stateSourceObject.Load(1, &i.InodeAttrs) 345 stateSourceObject.Load(2, &i.InodeDirectoryNoNewChildren) 346 stateSourceObject.Load(3, &i.InodeNotAnonymous) 347 stateSourceObject.Load(4, &i.InodeNotSymlink) 348 stateSourceObject.Load(5, &i.InodeTemporary) 349 stateSourceObject.Load(6, &i.InodeWatches) 350 stateSourceObject.Load(7, &i.OrderedChildren) 351 stateSourceObject.Load(8, &i.taskInodeRefs) 352 stateSourceObject.Load(9, &i.locks) 353 stateSourceObject.Load(10, &i.task) 354 } 355 356 func (i *taskOwnedInode) StateTypeName() string { 357 return "pkg/sentry/fsimpl/proc.taskOwnedInode" 358 } 359 360 func (i *taskOwnedInode) StateFields() []string { 361 return []string{ 362 "Inode", 363 "owner", 364 } 365 } 366 367 func (i *taskOwnedInode) beforeSave() {} 368 369 // +checklocksignore 370 func (i *taskOwnedInode) StateSave(stateSinkObject state.Sink) { 371 i.beforeSave() 372 stateSinkObject.Save(0, &i.Inode) 373 stateSinkObject.Save(1, &i.owner) 374 } 375 376 func (i *taskOwnedInode) afterLoad(context.Context) {} 377 378 // +checklocksignore 379 func (i *taskOwnedInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 380 stateSourceObject.Load(0, &i.Inode) 381 stateSourceObject.Load(1, &i.owner) 382 } 383 384 func (i *fdDir) StateTypeName() string { 385 return "pkg/sentry/fsimpl/proc.fdDir" 386 } 387 388 func (i *fdDir) StateFields() []string { 389 return []string{ 390 "locks", 391 "fs", 392 "task", 393 "produceSymlink", 394 } 395 } 396 397 func (i *fdDir) beforeSave() {} 398 399 // +checklocksignore 400 func (i *fdDir) StateSave(stateSinkObject state.Sink) { 401 i.beforeSave() 402 stateSinkObject.Save(0, &i.locks) 403 stateSinkObject.Save(1, &i.fs) 404 stateSinkObject.Save(2, &i.task) 405 stateSinkObject.Save(3, &i.produceSymlink) 406 } 407 408 func (i *fdDir) afterLoad(context.Context) {} 409 410 // +checklocksignore 411 func (i *fdDir) StateLoad(ctx context.Context, stateSourceObject state.Source) { 412 stateSourceObject.Load(0, &i.locks) 413 stateSourceObject.Load(1, &i.fs) 414 stateSourceObject.Load(2, &i.task) 415 stateSourceObject.Load(3, &i.produceSymlink) 416 } 417 418 func (i *fdDirInode) StateTypeName() string { 419 return "pkg/sentry/fsimpl/proc.fdDirInode" 420 } 421 422 func (i *fdDirInode) StateFields() []string { 423 return []string{ 424 "fdDir", 425 "fdDirInodeRefs", 426 "implStatFS", 427 "InodeAlwaysValid", 428 "InodeAttrs", 429 "InodeDirectoryNoNewChildren", 430 "InodeNotAnonymous", 431 "InodeNotSymlink", 432 "InodeTemporary", 433 "InodeWatches", 434 "OrderedChildren", 435 } 436 } 437 438 func (i *fdDirInode) beforeSave() {} 439 440 // +checklocksignore 441 func (i *fdDirInode) StateSave(stateSinkObject state.Sink) { 442 i.beforeSave() 443 stateSinkObject.Save(0, &i.fdDir) 444 stateSinkObject.Save(1, &i.fdDirInodeRefs) 445 stateSinkObject.Save(2, &i.implStatFS) 446 stateSinkObject.Save(3, &i.InodeAlwaysValid) 447 stateSinkObject.Save(4, &i.InodeAttrs) 448 stateSinkObject.Save(5, &i.InodeDirectoryNoNewChildren) 449 stateSinkObject.Save(6, &i.InodeNotAnonymous) 450 stateSinkObject.Save(7, &i.InodeNotSymlink) 451 stateSinkObject.Save(8, &i.InodeTemporary) 452 stateSinkObject.Save(9, &i.InodeWatches) 453 stateSinkObject.Save(10, &i.OrderedChildren) 454 } 455 456 func (i *fdDirInode) afterLoad(context.Context) {} 457 458 // +checklocksignore 459 func (i *fdDirInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 460 stateSourceObject.Load(0, &i.fdDir) 461 stateSourceObject.Load(1, &i.fdDirInodeRefs) 462 stateSourceObject.Load(2, &i.implStatFS) 463 stateSourceObject.Load(3, &i.InodeAlwaysValid) 464 stateSourceObject.Load(4, &i.InodeAttrs) 465 stateSourceObject.Load(5, &i.InodeDirectoryNoNewChildren) 466 stateSourceObject.Load(6, &i.InodeNotAnonymous) 467 stateSourceObject.Load(7, &i.InodeNotSymlink) 468 stateSourceObject.Load(8, &i.InodeTemporary) 469 stateSourceObject.Load(9, &i.InodeWatches) 470 stateSourceObject.Load(10, &i.OrderedChildren) 471 } 472 473 func (s *fdSymlink) StateTypeName() string { 474 return "pkg/sentry/fsimpl/proc.fdSymlink" 475 } 476 477 func (s *fdSymlink) StateFields() []string { 478 return []string{ 479 "implStatFS", 480 "InodeAttrs", 481 "InodeNoopRefCount", 482 "InodeNotAnonymous", 483 "InodeSymlink", 484 "InodeWatches", 485 "fs", 486 "task", 487 "fd", 488 } 489 } 490 491 func (s *fdSymlink) beforeSave() {} 492 493 // +checklocksignore 494 func (s *fdSymlink) StateSave(stateSinkObject state.Sink) { 495 s.beforeSave() 496 stateSinkObject.Save(0, &s.implStatFS) 497 stateSinkObject.Save(1, &s.InodeAttrs) 498 stateSinkObject.Save(2, &s.InodeNoopRefCount) 499 stateSinkObject.Save(3, &s.InodeNotAnonymous) 500 stateSinkObject.Save(4, &s.InodeSymlink) 501 stateSinkObject.Save(5, &s.InodeWatches) 502 stateSinkObject.Save(6, &s.fs) 503 stateSinkObject.Save(7, &s.task) 504 stateSinkObject.Save(8, &s.fd) 505 } 506 507 func (s *fdSymlink) afterLoad(context.Context) {} 508 509 // +checklocksignore 510 func (s *fdSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 511 stateSourceObject.Load(0, &s.implStatFS) 512 stateSourceObject.Load(1, &s.InodeAttrs) 513 stateSourceObject.Load(2, &s.InodeNoopRefCount) 514 stateSourceObject.Load(3, &s.InodeNotAnonymous) 515 stateSourceObject.Load(4, &s.InodeSymlink) 516 stateSourceObject.Load(5, &s.InodeWatches) 517 stateSourceObject.Load(6, &s.fs) 518 stateSourceObject.Load(7, &s.task) 519 stateSourceObject.Load(8, &s.fd) 520 } 521 522 func (i *fdInfoDirInode) StateTypeName() string { 523 return "pkg/sentry/fsimpl/proc.fdInfoDirInode" 524 } 525 526 func (i *fdInfoDirInode) StateFields() []string { 527 return []string{ 528 "fdDir", 529 "fdInfoDirInodeRefs", 530 "implStatFS", 531 "InodeAlwaysValid", 532 "InodeAttrs", 533 "InodeDirectoryNoNewChildren", 534 "InodeNotAnonymous", 535 "InodeNotSymlink", 536 "InodeTemporary", 537 "InodeWatches", 538 "OrderedChildren", 539 } 540 } 541 542 func (i *fdInfoDirInode) beforeSave() {} 543 544 // +checklocksignore 545 func (i *fdInfoDirInode) StateSave(stateSinkObject state.Sink) { 546 i.beforeSave() 547 stateSinkObject.Save(0, &i.fdDir) 548 stateSinkObject.Save(1, &i.fdInfoDirInodeRefs) 549 stateSinkObject.Save(2, &i.implStatFS) 550 stateSinkObject.Save(3, &i.InodeAlwaysValid) 551 stateSinkObject.Save(4, &i.InodeAttrs) 552 stateSinkObject.Save(5, &i.InodeDirectoryNoNewChildren) 553 stateSinkObject.Save(6, &i.InodeNotAnonymous) 554 stateSinkObject.Save(7, &i.InodeNotSymlink) 555 stateSinkObject.Save(8, &i.InodeTemporary) 556 stateSinkObject.Save(9, &i.InodeWatches) 557 stateSinkObject.Save(10, &i.OrderedChildren) 558 } 559 560 func (i *fdInfoDirInode) afterLoad(context.Context) {} 561 562 // +checklocksignore 563 func (i *fdInfoDirInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 564 stateSourceObject.Load(0, &i.fdDir) 565 stateSourceObject.Load(1, &i.fdInfoDirInodeRefs) 566 stateSourceObject.Load(2, &i.implStatFS) 567 stateSourceObject.Load(3, &i.InodeAlwaysValid) 568 stateSourceObject.Load(4, &i.InodeAttrs) 569 stateSourceObject.Load(5, &i.InodeDirectoryNoNewChildren) 570 stateSourceObject.Load(6, &i.InodeNotAnonymous) 571 stateSourceObject.Load(7, &i.InodeNotSymlink) 572 stateSourceObject.Load(8, &i.InodeTemporary) 573 stateSourceObject.Load(9, &i.InodeWatches) 574 stateSourceObject.Load(10, &i.OrderedChildren) 575 } 576 577 func (d *fdInfoData) StateTypeName() string { 578 return "pkg/sentry/fsimpl/proc.fdInfoData" 579 } 580 581 func (d *fdInfoData) StateFields() []string { 582 return []string{ 583 "DynamicBytesFile", 584 "fs", 585 "task", 586 "fd", 587 } 588 } 589 590 func (d *fdInfoData) beforeSave() {} 591 592 // +checklocksignore 593 func (d *fdInfoData) StateSave(stateSinkObject state.Sink) { 594 d.beforeSave() 595 stateSinkObject.Save(0, &d.DynamicBytesFile) 596 stateSinkObject.Save(1, &d.fs) 597 stateSinkObject.Save(2, &d.task) 598 stateSinkObject.Save(3, &d.fd) 599 } 600 601 func (d *fdInfoData) afterLoad(context.Context) {} 602 603 // +checklocksignore 604 func (d *fdInfoData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 605 stateSourceObject.Load(0, &d.DynamicBytesFile) 606 stateSourceObject.Load(1, &d.fs) 607 stateSourceObject.Load(2, &d.task) 608 stateSourceObject.Load(3, &d.fd) 609 } 610 611 func (d *auxvData) StateTypeName() string { 612 return "pkg/sentry/fsimpl/proc.auxvData" 613 } 614 615 func (d *auxvData) StateFields() []string { 616 return []string{ 617 "DynamicBytesFile", 618 "task", 619 } 620 } 621 622 func (d *auxvData) beforeSave() {} 623 624 // +checklocksignore 625 func (d *auxvData) StateSave(stateSinkObject state.Sink) { 626 d.beforeSave() 627 stateSinkObject.Save(0, &d.DynamicBytesFile) 628 stateSinkObject.Save(1, &d.task) 629 } 630 631 func (d *auxvData) afterLoad(context.Context) {} 632 633 // +checklocksignore 634 func (d *auxvData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 635 stateSourceObject.Load(0, &d.DynamicBytesFile) 636 stateSourceObject.Load(1, &d.task) 637 } 638 639 func (d *metadataData) StateTypeName() string { 640 return "pkg/sentry/fsimpl/proc.metadataData" 641 } 642 643 func (d *metadataData) StateFields() []string { 644 return []string{ 645 "DynamicBytesFile", 646 "task", 647 "metaType", 648 } 649 } 650 651 func (d *metadataData) beforeSave() {} 652 653 // +checklocksignore 654 func (d *metadataData) StateSave(stateSinkObject state.Sink) { 655 d.beforeSave() 656 stateSinkObject.Save(0, &d.DynamicBytesFile) 657 stateSinkObject.Save(1, &d.task) 658 stateSinkObject.Save(2, &d.metaType) 659 } 660 661 func (d *metadataData) afterLoad(context.Context) {} 662 663 // +checklocksignore 664 func (d *metadataData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 665 stateSourceObject.Load(0, &d.DynamicBytesFile) 666 stateSourceObject.Load(1, &d.task) 667 stateSourceObject.Load(2, &d.metaType) 668 } 669 670 func (i *commInode) StateTypeName() string { 671 return "pkg/sentry/fsimpl/proc.commInode" 672 } 673 674 func (i *commInode) StateFields() []string { 675 return []string{ 676 "DynamicBytesFile", 677 "task", 678 } 679 } 680 681 func (i *commInode) beforeSave() {} 682 683 // +checklocksignore 684 func (i *commInode) StateSave(stateSinkObject state.Sink) { 685 i.beforeSave() 686 stateSinkObject.Save(0, &i.DynamicBytesFile) 687 stateSinkObject.Save(1, &i.task) 688 } 689 690 func (i *commInode) afterLoad(context.Context) {} 691 692 // +checklocksignore 693 func (i *commInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 694 stateSourceObject.Load(0, &i.DynamicBytesFile) 695 stateSourceObject.Load(1, &i.task) 696 } 697 698 func (d *commData) StateTypeName() string { 699 return "pkg/sentry/fsimpl/proc.commData" 700 } 701 702 func (d *commData) StateFields() []string { 703 return []string{ 704 "DynamicBytesFile", 705 "task", 706 } 707 } 708 709 func (d *commData) beforeSave() {} 710 711 // +checklocksignore 712 func (d *commData) StateSave(stateSinkObject state.Sink) { 713 d.beforeSave() 714 stateSinkObject.Save(0, &d.DynamicBytesFile) 715 stateSinkObject.Save(1, &d.task) 716 } 717 718 func (d *commData) afterLoad(context.Context) {} 719 720 // +checklocksignore 721 func (d *commData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 722 stateSourceObject.Load(0, &d.DynamicBytesFile) 723 stateSourceObject.Load(1, &d.task) 724 } 725 726 func (d *idMapData) StateTypeName() string { 727 return "pkg/sentry/fsimpl/proc.idMapData" 728 } 729 730 func (d *idMapData) StateFields() []string { 731 return []string{ 732 "DynamicBytesFile", 733 "task", 734 "gids", 735 } 736 } 737 738 func (d *idMapData) beforeSave() {} 739 740 // +checklocksignore 741 func (d *idMapData) StateSave(stateSinkObject state.Sink) { 742 d.beforeSave() 743 stateSinkObject.Save(0, &d.DynamicBytesFile) 744 stateSinkObject.Save(1, &d.task) 745 stateSinkObject.Save(2, &d.gids) 746 } 747 748 func (d *idMapData) afterLoad(context.Context) {} 749 750 // +checklocksignore 751 func (d *idMapData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 752 stateSourceObject.Load(0, &d.DynamicBytesFile) 753 stateSourceObject.Load(1, &d.task) 754 stateSourceObject.Load(2, &d.gids) 755 } 756 757 func (f *memInode) StateTypeName() string { 758 return "pkg/sentry/fsimpl/proc.memInode" 759 } 760 761 func (f *memInode) StateFields() []string { 762 return []string{ 763 "InodeAttrs", 764 "InodeNoStatFS", 765 "InodeNoopRefCount", 766 "InodeNotAnonymous", 767 "InodeNotDirectory", 768 "InodeNotSymlink", 769 "InodeWatches", 770 "task", 771 "locks", 772 } 773 } 774 775 func (f *memInode) beforeSave() {} 776 777 // +checklocksignore 778 func (f *memInode) StateSave(stateSinkObject state.Sink) { 779 f.beforeSave() 780 stateSinkObject.Save(0, &f.InodeAttrs) 781 stateSinkObject.Save(1, &f.InodeNoStatFS) 782 stateSinkObject.Save(2, &f.InodeNoopRefCount) 783 stateSinkObject.Save(3, &f.InodeNotAnonymous) 784 stateSinkObject.Save(4, &f.InodeNotDirectory) 785 stateSinkObject.Save(5, &f.InodeNotSymlink) 786 stateSinkObject.Save(6, &f.InodeWatches) 787 stateSinkObject.Save(7, &f.task) 788 stateSinkObject.Save(8, &f.locks) 789 } 790 791 func (f *memInode) afterLoad(context.Context) {} 792 793 // +checklocksignore 794 func (f *memInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 795 stateSourceObject.Load(0, &f.InodeAttrs) 796 stateSourceObject.Load(1, &f.InodeNoStatFS) 797 stateSourceObject.Load(2, &f.InodeNoopRefCount) 798 stateSourceObject.Load(3, &f.InodeNotAnonymous) 799 stateSourceObject.Load(4, &f.InodeNotDirectory) 800 stateSourceObject.Load(5, &f.InodeNotSymlink) 801 stateSourceObject.Load(6, &f.InodeWatches) 802 stateSourceObject.Load(7, &f.task) 803 stateSourceObject.Load(8, &f.locks) 804 } 805 806 func (fd *memFD) StateTypeName() string { 807 return "pkg/sentry/fsimpl/proc.memFD" 808 } 809 810 func (fd *memFD) StateFields() []string { 811 return []string{ 812 "vfsfd", 813 "FileDescriptionDefaultImpl", 814 "LockFD", 815 "inode", 816 "offset", 817 } 818 } 819 820 func (fd *memFD) beforeSave() {} 821 822 // +checklocksignore 823 func (fd *memFD) StateSave(stateSinkObject state.Sink) { 824 fd.beforeSave() 825 stateSinkObject.Save(0, &fd.vfsfd) 826 stateSinkObject.Save(1, &fd.FileDescriptionDefaultImpl) 827 stateSinkObject.Save(2, &fd.LockFD) 828 stateSinkObject.Save(3, &fd.inode) 829 stateSinkObject.Save(4, &fd.offset) 830 } 831 832 func (fd *memFD) afterLoad(context.Context) {} 833 834 // +checklocksignore 835 func (fd *memFD) StateLoad(ctx context.Context, stateSourceObject state.Source) { 836 stateSourceObject.Load(0, &fd.vfsfd) 837 stateSourceObject.Load(1, &fd.FileDescriptionDefaultImpl) 838 stateSourceObject.Load(2, &fd.LockFD) 839 stateSourceObject.Load(3, &fd.inode) 840 stateSourceObject.Load(4, &fd.offset) 841 } 842 843 func (d *limitsData) StateTypeName() string { 844 return "pkg/sentry/fsimpl/proc.limitsData" 845 } 846 847 func (d *limitsData) StateFields() []string { 848 return []string{ 849 "DynamicBytesFile", 850 "task", 851 } 852 } 853 854 func (d *limitsData) beforeSave() {} 855 856 // +checklocksignore 857 func (d *limitsData) StateSave(stateSinkObject state.Sink) { 858 d.beforeSave() 859 stateSinkObject.Save(0, &d.DynamicBytesFile) 860 stateSinkObject.Save(1, &d.task) 861 } 862 863 func (d *limitsData) afterLoad(context.Context) {} 864 865 // +checklocksignore 866 func (d *limitsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 867 stateSourceObject.Load(0, &d.DynamicBytesFile) 868 stateSourceObject.Load(1, &d.task) 869 } 870 871 func (d *mapsData) StateTypeName() string { 872 return "pkg/sentry/fsimpl/proc.mapsData" 873 } 874 875 func (d *mapsData) StateFields() []string { 876 return []string{ 877 "DynamicBytesFile", 878 "task", 879 } 880 } 881 882 func (d *mapsData) beforeSave() {} 883 884 // +checklocksignore 885 func (d *mapsData) StateSave(stateSinkObject state.Sink) { 886 d.beforeSave() 887 stateSinkObject.Save(0, &d.DynamicBytesFile) 888 stateSinkObject.Save(1, &d.task) 889 } 890 891 func (d *mapsData) afterLoad(context.Context) {} 892 893 // +checklocksignore 894 func (d *mapsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 895 stateSourceObject.Load(0, &d.DynamicBytesFile) 896 stateSourceObject.Load(1, &d.task) 897 } 898 899 func (d *smapsData) StateTypeName() string { 900 return "pkg/sentry/fsimpl/proc.smapsData" 901 } 902 903 func (d *smapsData) StateFields() []string { 904 return []string{ 905 "DynamicBytesFile", 906 "task", 907 } 908 } 909 910 func (d *smapsData) beforeSave() {} 911 912 // +checklocksignore 913 func (d *smapsData) StateSave(stateSinkObject state.Sink) { 914 d.beforeSave() 915 stateSinkObject.Save(0, &d.DynamicBytesFile) 916 stateSinkObject.Save(1, &d.task) 917 } 918 919 func (d *smapsData) afterLoad(context.Context) {} 920 921 // +checklocksignore 922 func (d *smapsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 923 stateSourceObject.Load(0, &d.DynamicBytesFile) 924 stateSourceObject.Load(1, &d.task) 925 } 926 927 func (s *taskStatData) StateTypeName() string { 928 return "pkg/sentry/fsimpl/proc.taskStatData" 929 } 930 931 func (s *taskStatData) StateFields() []string { 932 return []string{ 933 "DynamicBytesFile", 934 "task", 935 "tgstats", 936 "pidns", 937 } 938 } 939 940 func (s *taskStatData) beforeSave() {} 941 942 // +checklocksignore 943 func (s *taskStatData) StateSave(stateSinkObject state.Sink) { 944 s.beforeSave() 945 stateSinkObject.Save(0, &s.DynamicBytesFile) 946 stateSinkObject.Save(1, &s.task) 947 stateSinkObject.Save(2, &s.tgstats) 948 stateSinkObject.Save(3, &s.pidns) 949 } 950 951 func (s *taskStatData) afterLoad(context.Context) {} 952 953 // +checklocksignore 954 func (s *taskStatData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 955 stateSourceObject.Load(0, &s.DynamicBytesFile) 956 stateSourceObject.Load(1, &s.task) 957 stateSourceObject.Load(2, &s.tgstats) 958 stateSourceObject.Load(3, &s.pidns) 959 } 960 961 func (s *statmData) StateTypeName() string { 962 return "pkg/sentry/fsimpl/proc.statmData" 963 } 964 965 func (s *statmData) StateFields() []string { 966 return []string{ 967 "DynamicBytesFile", 968 "task", 969 } 970 } 971 972 func (s *statmData) beforeSave() {} 973 974 // +checklocksignore 975 func (s *statmData) StateSave(stateSinkObject state.Sink) { 976 s.beforeSave() 977 stateSinkObject.Save(0, &s.DynamicBytesFile) 978 stateSinkObject.Save(1, &s.task) 979 } 980 981 func (s *statmData) afterLoad(context.Context) {} 982 983 // +checklocksignore 984 func (s *statmData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 985 stateSourceObject.Load(0, &s.DynamicBytesFile) 986 stateSourceObject.Load(1, &s.task) 987 } 988 989 func (s *statusInode) StateTypeName() string { 990 return "pkg/sentry/fsimpl/proc.statusInode" 991 } 992 993 func (s *statusInode) StateFields() []string { 994 return []string{ 995 "InodeAttrs", 996 "InodeNoStatFS", 997 "InodeNoopRefCount", 998 "InodeNotAnonymous", 999 "InodeNotDirectory", 1000 "InodeNotSymlink", 1001 "InodeWatches", 1002 "task", 1003 "pidns", 1004 "locks", 1005 } 1006 } 1007 1008 func (s *statusInode) beforeSave() {} 1009 1010 // +checklocksignore 1011 func (s *statusInode) StateSave(stateSinkObject state.Sink) { 1012 s.beforeSave() 1013 stateSinkObject.Save(0, &s.InodeAttrs) 1014 stateSinkObject.Save(1, &s.InodeNoStatFS) 1015 stateSinkObject.Save(2, &s.InodeNoopRefCount) 1016 stateSinkObject.Save(3, &s.InodeNotAnonymous) 1017 stateSinkObject.Save(4, &s.InodeNotDirectory) 1018 stateSinkObject.Save(5, &s.InodeNotSymlink) 1019 stateSinkObject.Save(6, &s.InodeWatches) 1020 stateSinkObject.Save(7, &s.task) 1021 stateSinkObject.Save(8, &s.pidns) 1022 stateSinkObject.Save(9, &s.locks) 1023 } 1024 1025 func (s *statusInode) afterLoad(context.Context) {} 1026 1027 // +checklocksignore 1028 func (s *statusInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1029 stateSourceObject.Load(0, &s.InodeAttrs) 1030 stateSourceObject.Load(1, &s.InodeNoStatFS) 1031 stateSourceObject.Load(2, &s.InodeNoopRefCount) 1032 stateSourceObject.Load(3, &s.InodeNotAnonymous) 1033 stateSourceObject.Load(4, &s.InodeNotDirectory) 1034 stateSourceObject.Load(5, &s.InodeNotSymlink) 1035 stateSourceObject.Load(6, &s.InodeWatches) 1036 stateSourceObject.Load(7, &s.task) 1037 stateSourceObject.Load(8, &s.pidns) 1038 stateSourceObject.Load(9, &s.locks) 1039 } 1040 1041 func (s *statusFD) StateTypeName() string { 1042 return "pkg/sentry/fsimpl/proc.statusFD" 1043 } 1044 1045 func (s *statusFD) StateFields() []string { 1046 return []string{ 1047 "statusFDLowerBase", 1048 "DynamicBytesFileDescriptionImpl", 1049 "LockFD", 1050 "vfsfd", 1051 "inode", 1052 "task", 1053 "pidns", 1054 "userns", 1055 } 1056 } 1057 1058 func (s *statusFD) beforeSave() {} 1059 1060 // +checklocksignore 1061 func (s *statusFD) StateSave(stateSinkObject state.Sink) { 1062 s.beforeSave() 1063 stateSinkObject.Save(0, &s.statusFDLowerBase) 1064 stateSinkObject.Save(1, &s.DynamicBytesFileDescriptionImpl) 1065 stateSinkObject.Save(2, &s.LockFD) 1066 stateSinkObject.Save(3, &s.vfsfd) 1067 stateSinkObject.Save(4, &s.inode) 1068 stateSinkObject.Save(5, &s.task) 1069 stateSinkObject.Save(6, &s.pidns) 1070 stateSinkObject.Save(7, &s.userns) 1071 } 1072 1073 func (s *statusFD) afterLoad(context.Context) {} 1074 1075 // +checklocksignore 1076 func (s *statusFD) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1077 stateSourceObject.Load(0, &s.statusFDLowerBase) 1078 stateSourceObject.Load(1, &s.DynamicBytesFileDescriptionImpl) 1079 stateSourceObject.Load(2, &s.LockFD) 1080 stateSourceObject.Load(3, &s.vfsfd) 1081 stateSourceObject.Load(4, &s.inode) 1082 stateSourceObject.Load(5, &s.task) 1083 stateSourceObject.Load(6, &s.pidns) 1084 stateSourceObject.Load(7, &s.userns) 1085 } 1086 1087 func (s *statusFDLowerBase) StateTypeName() string { 1088 return "pkg/sentry/fsimpl/proc.statusFDLowerBase" 1089 } 1090 1091 func (s *statusFDLowerBase) StateFields() []string { 1092 return []string{ 1093 "FileDescriptionDefaultImpl", 1094 } 1095 } 1096 1097 func (s *statusFDLowerBase) beforeSave() {} 1098 1099 // +checklocksignore 1100 func (s *statusFDLowerBase) StateSave(stateSinkObject state.Sink) { 1101 s.beforeSave() 1102 stateSinkObject.Save(0, &s.FileDescriptionDefaultImpl) 1103 } 1104 1105 func (s *statusFDLowerBase) afterLoad(context.Context) {} 1106 1107 // +checklocksignore 1108 func (s *statusFDLowerBase) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1109 stateSourceObject.Load(0, &s.FileDescriptionDefaultImpl) 1110 } 1111 1112 func (i *ioData) StateTypeName() string { 1113 return "pkg/sentry/fsimpl/proc.ioData" 1114 } 1115 1116 func (i *ioData) StateFields() []string { 1117 return []string{ 1118 "DynamicBytesFile", 1119 "ioUsage", 1120 } 1121 } 1122 1123 func (i *ioData) beforeSave() {} 1124 1125 // +checklocksignore 1126 func (i *ioData) StateSave(stateSinkObject state.Sink) { 1127 i.beforeSave() 1128 stateSinkObject.Save(0, &i.DynamicBytesFile) 1129 stateSinkObject.Save(1, &i.ioUsage) 1130 } 1131 1132 func (i *ioData) afterLoad(context.Context) {} 1133 1134 // +checklocksignore 1135 func (i *ioData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1136 stateSourceObject.Load(0, &i.DynamicBytesFile) 1137 stateSourceObject.Load(1, &i.ioUsage) 1138 } 1139 1140 func (o *oomScoreAdj) StateTypeName() string { 1141 return "pkg/sentry/fsimpl/proc.oomScoreAdj" 1142 } 1143 1144 func (o *oomScoreAdj) StateFields() []string { 1145 return []string{ 1146 "DynamicBytesFile", 1147 "task", 1148 } 1149 } 1150 1151 func (o *oomScoreAdj) beforeSave() {} 1152 1153 // +checklocksignore 1154 func (o *oomScoreAdj) StateSave(stateSinkObject state.Sink) { 1155 o.beforeSave() 1156 stateSinkObject.Save(0, &o.DynamicBytesFile) 1157 stateSinkObject.Save(1, &o.task) 1158 } 1159 1160 func (o *oomScoreAdj) afterLoad(context.Context) {} 1161 1162 // +checklocksignore 1163 func (o *oomScoreAdj) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1164 stateSourceObject.Load(0, &o.DynamicBytesFile) 1165 stateSourceObject.Load(1, &o.task) 1166 } 1167 1168 func (s *exeSymlink) StateTypeName() string { 1169 return "pkg/sentry/fsimpl/proc.exeSymlink" 1170 } 1171 1172 func (s *exeSymlink) StateFields() []string { 1173 return []string{ 1174 "implStatFS", 1175 "InodeAttrs", 1176 "InodeNoopRefCount", 1177 "InodeNotAnonymous", 1178 "InodeSymlink", 1179 "InodeWatches", 1180 "fs", 1181 "task", 1182 } 1183 } 1184 1185 func (s *exeSymlink) beforeSave() {} 1186 1187 // +checklocksignore 1188 func (s *exeSymlink) StateSave(stateSinkObject state.Sink) { 1189 s.beforeSave() 1190 stateSinkObject.Save(0, &s.implStatFS) 1191 stateSinkObject.Save(1, &s.InodeAttrs) 1192 stateSinkObject.Save(2, &s.InodeNoopRefCount) 1193 stateSinkObject.Save(3, &s.InodeNotAnonymous) 1194 stateSinkObject.Save(4, &s.InodeSymlink) 1195 stateSinkObject.Save(5, &s.InodeWatches) 1196 stateSinkObject.Save(6, &s.fs) 1197 stateSinkObject.Save(7, &s.task) 1198 } 1199 1200 func (s *exeSymlink) afterLoad(context.Context) {} 1201 1202 // +checklocksignore 1203 func (s *exeSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1204 stateSourceObject.Load(0, &s.implStatFS) 1205 stateSourceObject.Load(1, &s.InodeAttrs) 1206 stateSourceObject.Load(2, &s.InodeNoopRefCount) 1207 stateSourceObject.Load(3, &s.InodeNotAnonymous) 1208 stateSourceObject.Load(4, &s.InodeSymlink) 1209 stateSourceObject.Load(5, &s.InodeWatches) 1210 stateSourceObject.Load(6, &s.fs) 1211 stateSourceObject.Load(7, &s.task) 1212 } 1213 1214 func (s *cwdSymlink) StateTypeName() string { 1215 return "pkg/sentry/fsimpl/proc.cwdSymlink" 1216 } 1217 1218 func (s *cwdSymlink) StateFields() []string { 1219 return []string{ 1220 "implStatFS", 1221 "InodeAttrs", 1222 "InodeNoopRefCount", 1223 "InodeNotAnonymous", 1224 "InodeSymlink", 1225 "InodeWatches", 1226 "fs", 1227 "task", 1228 } 1229 } 1230 1231 func (s *cwdSymlink) beforeSave() {} 1232 1233 // +checklocksignore 1234 func (s *cwdSymlink) StateSave(stateSinkObject state.Sink) { 1235 s.beforeSave() 1236 stateSinkObject.Save(0, &s.implStatFS) 1237 stateSinkObject.Save(1, &s.InodeAttrs) 1238 stateSinkObject.Save(2, &s.InodeNoopRefCount) 1239 stateSinkObject.Save(3, &s.InodeNotAnonymous) 1240 stateSinkObject.Save(4, &s.InodeSymlink) 1241 stateSinkObject.Save(5, &s.InodeWatches) 1242 stateSinkObject.Save(6, &s.fs) 1243 stateSinkObject.Save(7, &s.task) 1244 } 1245 1246 func (s *cwdSymlink) afterLoad(context.Context) {} 1247 1248 // +checklocksignore 1249 func (s *cwdSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1250 stateSourceObject.Load(0, &s.implStatFS) 1251 stateSourceObject.Load(1, &s.InodeAttrs) 1252 stateSourceObject.Load(2, &s.InodeNoopRefCount) 1253 stateSourceObject.Load(3, &s.InodeNotAnonymous) 1254 stateSourceObject.Load(4, &s.InodeSymlink) 1255 stateSourceObject.Load(5, &s.InodeWatches) 1256 stateSourceObject.Load(6, &s.fs) 1257 stateSourceObject.Load(7, &s.task) 1258 } 1259 1260 func (s *rootSymlink) StateTypeName() string { 1261 return "pkg/sentry/fsimpl/proc.rootSymlink" 1262 } 1263 1264 func (s *rootSymlink) StateFields() []string { 1265 return []string{ 1266 "implStatFS", 1267 "InodeAttrs", 1268 "InodeNoopRefCount", 1269 "InodeNotAnonymous", 1270 "InodeSymlink", 1271 "InodeWatches", 1272 "fs", 1273 "task", 1274 } 1275 } 1276 1277 func (s *rootSymlink) beforeSave() {} 1278 1279 // +checklocksignore 1280 func (s *rootSymlink) StateSave(stateSinkObject state.Sink) { 1281 s.beforeSave() 1282 stateSinkObject.Save(0, &s.implStatFS) 1283 stateSinkObject.Save(1, &s.InodeAttrs) 1284 stateSinkObject.Save(2, &s.InodeNoopRefCount) 1285 stateSinkObject.Save(3, &s.InodeNotAnonymous) 1286 stateSinkObject.Save(4, &s.InodeSymlink) 1287 stateSinkObject.Save(5, &s.InodeWatches) 1288 stateSinkObject.Save(6, &s.fs) 1289 stateSinkObject.Save(7, &s.task) 1290 } 1291 1292 func (s *rootSymlink) afterLoad(context.Context) {} 1293 1294 // +checklocksignore 1295 func (s *rootSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1296 stateSourceObject.Load(0, &s.implStatFS) 1297 stateSourceObject.Load(1, &s.InodeAttrs) 1298 stateSourceObject.Load(2, &s.InodeNoopRefCount) 1299 stateSourceObject.Load(3, &s.InodeNotAnonymous) 1300 stateSourceObject.Load(4, &s.InodeSymlink) 1301 stateSourceObject.Load(5, &s.InodeWatches) 1302 stateSourceObject.Load(6, &s.fs) 1303 stateSourceObject.Load(7, &s.task) 1304 } 1305 1306 func (i *mountInfoData) StateTypeName() string { 1307 return "pkg/sentry/fsimpl/proc.mountInfoData" 1308 } 1309 1310 func (i *mountInfoData) StateFields() []string { 1311 return []string{ 1312 "DynamicBytesFile", 1313 "fs", 1314 "task", 1315 } 1316 } 1317 1318 func (i *mountInfoData) beforeSave() {} 1319 1320 // +checklocksignore 1321 func (i *mountInfoData) StateSave(stateSinkObject state.Sink) { 1322 i.beforeSave() 1323 stateSinkObject.Save(0, &i.DynamicBytesFile) 1324 stateSinkObject.Save(1, &i.fs) 1325 stateSinkObject.Save(2, &i.task) 1326 } 1327 1328 func (i *mountInfoData) afterLoad(context.Context) {} 1329 1330 // +checklocksignore 1331 func (i *mountInfoData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1332 stateSourceObject.Load(0, &i.DynamicBytesFile) 1333 stateSourceObject.Load(1, &i.fs) 1334 stateSourceObject.Load(2, &i.task) 1335 } 1336 1337 func (i *mountsData) StateTypeName() string { 1338 return "pkg/sentry/fsimpl/proc.mountsData" 1339 } 1340 1341 func (i *mountsData) StateFields() []string { 1342 return []string{ 1343 "DynamicBytesFile", 1344 "fs", 1345 "task", 1346 } 1347 } 1348 1349 func (i *mountsData) beforeSave() {} 1350 1351 // +checklocksignore 1352 func (i *mountsData) StateSave(stateSinkObject state.Sink) { 1353 i.beforeSave() 1354 stateSinkObject.Save(0, &i.DynamicBytesFile) 1355 stateSinkObject.Save(1, &i.fs) 1356 stateSinkObject.Save(2, &i.task) 1357 } 1358 1359 func (i *mountsData) afterLoad(context.Context) {} 1360 1361 // +checklocksignore 1362 func (i *mountsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1363 stateSourceObject.Load(0, &i.DynamicBytesFile) 1364 stateSourceObject.Load(1, &i.fs) 1365 stateSourceObject.Load(2, &i.task) 1366 } 1367 1368 func (s *namespaceSymlink) StateTypeName() string { 1369 return "pkg/sentry/fsimpl/proc.namespaceSymlink" 1370 } 1371 1372 func (s *namespaceSymlink) StateFields() []string { 1373 return []string{ 1374 "StaticSymlink", 1375 "task", 1376 "nsType", 1377 } 1378 } 1379 1380 func (s *namespaceSymlink) beforeSave() {} 1381 1382 // +checklocksignore 1383 func (s *namespaceSymlink) StateSave(stateSinkObject state.Sink) { 1384 s.beforeSave() 1385 stateSinkObject.Save(0, &s.StaticSymlink) 1386 stateSinkObject.Save(1, &s.task) 1387 stateSinkObject.Save(2, &s.nsType) 1388 } 1389 1390 func (s *namespaceSymlink) afterLoad(context.Context) {} 1391 1392 // +checklocksignore 1393 func (s *namespaceSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1394 stateSourceObject.Load(0, &s.StaticSymlink) 1395 stateSourceObject.Load(1, &s.task) 1396 stateSourceObject.Load(2, &s.nsType) 1397 } 1398 1399 func (i *namespaceInode) StateTypeName() string { 1400 return "pkg/sentry/fsimpl/proc.namespaceInode" 1401 } 1402 1403 func (i *namespaceInode) StateFields() []string { 1404 return []string{ 1405 "implStatFS", 1406 "InodeAttrs", 1407 "InodeNoopRefCount", 1408 "InodeNotAnonymous", 1409 "InodeNotDirectory", 1410 "InodeNotSymlink", 1411 "InodeWatches", 1412 "locks", 1413 } 1414 } 1415 1416 func (i *namespaceInode) beforeSave() {} 1417 1418 // +checklocksignore 1419 func (i *namespaceInode) StateSave(stateSinkObject state.Sink) { 1420 i.beforeSave() 1421 stateSinkObject.Save(0, &i.implStatFS) 1422 stateSinkObject.Save(1, &i.InodeAttrs) 1423 stateSinkObject.Save(2, &i.InodeNoopRefCount) 1424 stateSinkObject.Save(3, &i.InodeNotAnonymous) 1425 stateSinkObject.Save(4, &i.InodeNotDirectory) 1426 stateSinkObject.Save(5, &i.InodeNotSymlink) 1427 stateSinkObject.Save(6, &i.InodeWatches) 1428 stateSinkObject.Save(7, &i.locks) 1429 } 1430 1431 func (i *namespaceInode) afterLoad(context.Context) {} 1432 1433 // +checklocksignore 1434 func (i *namespaceInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1435 stateSourceObject.Load(0, &i.implStatFS) 1436 stateSourceObject.Load(1, &i.InodeAttrs) 1437 stateSourceObject.Load(2, &i.InodeNoopRefCount) 1438 stateSourceObject.Load(3, &i.InodeNotAnonymous) 1439 stateSourceObject.Load(4, &i.InodeNotDirectory) 1440 stateSourceObject.Load(5, &i.InodeNotSymlink) 1441 stateSourceObject.Load(6, &i.InodeWatches) 1442 stateSourceObject.Load(7, &i.locks) 1443 } 1444 1445 func (fd *namespaceFD) StateTypeName() string { 1446 return "pkg/sentry/fsimpl/proc.namespaceFD" 1447 } 1448 1449 func (fd *namespaceFD) StateFields() []string { 1450 return []string{ 1451 "FileDescriptionDefaultImpl", 1452 "LockFD", 1453 "vfsfd", 1454 "inode", 1455 } 1456 } 1457 1458 func (fd *namespaceFD) beforeSave() {} 1459 1460 // +checklocksignore 1461 func (fd *namespaceFD) StateSave(stateSinkObject state.Sink) { 1462 fd.beforeSave() 1463 stateSinkObject.Save(0, &fd.FileDescriptionDefaultImpl) 1464 stateSinkObject.Save(1, &fd.LockFD) 1465 stateSinkObject.Save(2, &fd.vfsfd) 1466 stateSinkObject.Save(3, &fd.inode) 1467 } 1468 1469 func (fd *namespaceFD) afterLoad(context.Context) {} 1470 1471 // +checklocksignore 1472 func (fd *namespaceFD) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1473 stateSourceObject.Load(0, &fd.FileDescriptionDefaultImpl) 1474 stateSourceObject.Load(1, &fd.LockFD) 1475 stateSourceObject.Load(2, &fd.vfsfd) 1476 stateSourceObject.Load(3, &fd.inode) 1477 } 1478 1479 func (d *taskCgroupData) StateTypeName() string { 1480 return "pkg/sentry/fsimpl/proc.taskCgroupData" 1481 } 1482 1483 func (d *taskCgroupData) StateFields() []string { 1484 return []string{ 1485 "dynamicBytesFileSetAttr", 1486 "task", 1487 } 1488 } 1489 1490 func (d *taskCgroupData) beforeSave() {} 1491 1492 // +checklocksignore 1493 func (d *taskCgroupData) StateSave(stateSinkObject state.Sink) { 1494 d.beforeSave() 1495 stateSinkObject.Save(0, &d.dynamicBytesFileSetAttr) 1496 stateSinkObject.Save(1, &d.task) 1497 } 1498 1499 func (d *taskCgroupData) afterLoad(context.Context) {} 1500 1501 // +checklocksignore 1502 func (d *taskCgroupData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1503 stateSourceObject.Load(0, &d.dynamicBytesFileSetAttr) 1504 stateSourceObject.Load(1, &d.task) 1505 } 1506 1507 func (d *childrenData) StateTypeName() string { 1508 return "pkg/sentry/fsimpl/proc.childrenData" 1509 } 1510 1511 func (d *childrenData) StateFields() []string { 1512 return []string{ 1513 "DynamicBytesFile", 1514 "task", 1515 "pidns", 1516 } 1517 } 1518 1519 func (d *childrenData) beforeSave() {} 1520 1521 // +checklocksignore 1522 func (d *childrenData) StateSave(stateSinkObject state.Sink) { 1523 d.beforeSave() 1524 stateSinkObject.Save(0, &d.DynamicBytesFile) 1525 stateSinkObject.Save(1, &d.task) 1526 stateSinkObject.Save(2, &d.pidns) 1527 } 1528 1529 func (d *childrenData) afterLoad(context.Context) {} 1530 1531 // +checklocksignore 1532 func (d *childrenData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1533 stateSourceObject.Load(0, &d.DynamicBytesFile) 1534 stateSourceObject.Load(1, &d.task) 1535 stateSourceObject.Load(2, &d.pidns) 1536 } 1537 1538 func (r *taskInodeRefs) StateTypeName() string { 1539 return "pkg/sentry/fsimpl/proc.taskInodeRefs" 1540 } 1541 1542 func (r *taskInodeRefs) StateFields() []string { 1543 return []string{ 1544 "refCount", 1545 } 1546 } 1547 1548 func (r *taskInodeRefs) beforeSave() {} 1549 1550 // +checklocksignore 1551 func (r *taskInodeRefs) StateSave(stateSinkObject state.Sink) { 1552 r.beforeSave() 1553 stateSinkObject.Save(0, &r.refCount) 1554 } 1555 1556 // +checklocksignore 1557 func (r *taskInodeRefs) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1558 stateSourceObject.Load(0, &r.refCount) 1559 stateSourceObject.AfterLoad(func() { r.afterLoad(ctx) }) 1560 } 1561 1562 func (n *ifinet6) StateTypeName() string { 1563 return "pkg/sentry/fsimpl/proc.ifinet6" 1564 } 1565 1566 func (n *ifinet6) StateFields() []string { 1567 return []string{ 1568 "DynamicBytesFile", 1569 "stack", 1570 } 1571 } 1572 1573 func (n *ifinet6) beforeSave() {} 1574 1575 // +checklocksignore 1576 func (n *ifinet6) StateSave(stateSinkObject state.Sink) { 1577 n.beforeSave() 1578 stateSinkObject.Save(0, &n.DynamicBytesFile) 1579 stateSinkObject.Save(1, &n.stack) 1580 } 1581 1582 func (n *ifinet6) afterLoad(context.Context) {} 1583 1584 // +checklocksignore 1585 func (n *ifinet6) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1586 stateSourceObject.Load(0, &n.DynamicBytesFile) 1587 stateSourceObject.Load(1, &n.stack) 1588 } 1589 1590 func (n *netDevData) StateTypeName() string { 1591 return "pkg/sentry/fsimpl/proc.netDevData" 1592 } 1593 1594 func (n *netDevData) StateFields() []string { 1595 return []string{ 1596 "DynamicBytesFile", 1597 "stack", 1598 } 1599 } 1600 1601 func (n *netDevData) beforeSave() {} 1602 1603 // +checklocksignore 1604 func (n *netDevData) StateSave(stateSinkObject state.Sink) { 1605 n.beforeSave() 1606 stateSinkObject.Save(0, &n.DynamicBytesFile) 1607 stateSinkObject.Save(1, &n.stack) 1608 } 1609 1610 func (n *netDevData) afterLoad(context.Context) {} 1611 1612 // +checklocksignore 1613 func (n *netDevData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1614 stateSourceObject.Load(0, &n.DynamicBytesFile) 1615 stateSourceObject.Load(1, &n.stack) 1616 } 1617 1618 func (n *netUnixData) StateTypeName() string { 1619 return "pkg/sentry/fsimpl/proc.netUnixData" 1620 } 1621 1622 func (n *netUnixData) StateFields() []string { 1623 return []string{ 1624 "DynamicBytesFile", 1625 "kernel", 1626 } 1627 } 1628 1629 func (n *netUnixData) beforeSave() {} 1630 1631 // +checklocksignore 1632 func (n *netUnixData) StateSave(stateSinkObject state.Sink) { 1633 n.beforeSave() 1634 stateSinkObject.Save(0, &n.DynamicBytesFile) 1635 stateSinkObject.Save(1, &n.kernel) 1636 } 1637 1638 func (n *netUnixData) afterLoad(context.Context) {} 1639 1640 // +checklocksignore 1641 func (n *netUnixData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1642 stateSourceObject.Load(0, &n.DynamicBytesFile) 1643 stateSourceObject.Load(1, &n.kernel) 1644 } 1645 1646 func (d *netTCPData) StateTypeName() string { 1647 return "pkg/sentry/fsimpl/proc.netTCPData" 1648 } 1649 1650 func (d *netTCPData) StateFields() []string { 1651 return []string{ 1652 "DynamicBytesFile", 1653 "kernel", 1654 } 1655 } 1656 1657 func (d *netTCPData) beforeSave() {} 1658 1659 // +checklocksignore 1660 func (d *netTCPData) StateSave(stateSinkObject state.Sink) { 1661 d.beforeSave() 1662 stateSinkObject.Save(0, &d.DynamicBytesFile) 1663 stateSinkObject.Save(1, &d.kernel) 1664 } 1665 1666 func (d *netTCPData) afterLoad(context.Context) {} 1667 1668 // +checklocksignore 1669 func (d *netTCPData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1670 stateSourceObject.Load(0, &d.DynamicBytesFile) 1671 stateSourceObject.Load(1, &d.kernel) 1672 } 1673 1674 func (d *netTCP6Data) StateTypeName() string { 1675 return "pkg/sentry/fsimpl/proc.netTCP6Data" 1676 } 1677 1678 func (d *netTCP6Data) StateFields() []string { 1679 return []string{ 1680 "DynamicBytesFile", 1681 "kernel", 1682 } 1683 } 1684 1685 func (d *netTCP6Data) beforeSave() {} 1686 1687 // +checklocksignore 1688 func (d *netTCP6Data) StateSave(stateSinkObject state.Sink) { 1689 d.beforeSave() 1690 stateSinkObject.Save(0, &d.DynamicBytesFile) 1691 stateSinkObject.Save(1, &d.kernel) 1692 } 1693 1694 func (d *netTCP6Data) afterLoad(context.Context) {} 1695 1696 // +checklocksignore 1697 func (d *netTCP6Data) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1698 stateSourceObject.Load(0, &d.DynamicBytesFile) 1699 stateSourceObject.Load(1, &d.kernel) 1700 } 1701 1702 func (d *netUDPData) StateTypeName() string { 1703 return "pkg/sentry/fsimpl/proc.netUDPData" 1704 } 1705 1706 func (d *netUDPData) StateFields() []string { 1707 return []string{ 1708 "DynamicBytesFile", 1709 "kernel", 1710 } 1711 } 1712 1713 func (d *netUDPData) beforeSave() {} 1714 1715 // +checklocksignore 1716 func (d *netUDPData) StateSave(stateSinkObject state.Sink) { 1717 d.beforeSave() 1718 stateSinkObject.Save(0, &d.DynamicBytesFile) 1719 stateSinkObject.Save(1, &d.kernel) 1720 } 1721 1722 func (d *netUDPData) afterLoad(context.Context) {} 1723 1724 // +checklocksignore 1725 func (d *netUDPData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1726 stateSourceObject.Load(0, &d.DynamicBytesFile) 1727 stateSourceObject.Load(1, &d.kernel) 1728 } 1729 1730 func (d *netSnmpData) StateTypeName() string { 1731 return "pkg/sentry/fsimpl/proc.netSnmpData" 1732 } 1733 1734 func (d *netSnmpData) StateFields() []string { 1735 return []string{ 1736 "DynamicBytesFile", 1737 "stack", 1738 } 1739 } 1740 1741 func (d *netSnmpData) beforeSave() {} 1742 1743 // +checklocksignore 1744 func (d *netSnmpData) StateSave(stateSinkObject state.Sink) { 1745 d.beforeSave() 1746 stateSinkObject.Save(0, &d.DynamicBytesFile) 1747 stateSinkObject.Save(1, &d.stack) 1748 } 1749 1750 func (d *netSnmpData) afterLoad(context.Context) {} 1751 1752 // +checklocksignore 1753 func (d *netSnmpData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1754 stateSourceObject.Load(0, &d.DynamicBytesFile) 1755 stateSourceObject.Load(1, &d.stack) 1756 } 1757 1758 func (s *snmpLine) StateTypeName() string { 1759 return "pkg/sentry/fsimpl/proc.snmpLine" 1760 } 1761 1762 func (s *snmpLine) StateFields() []string { 1763 return []string{ 1764 "prefix", 1765 "header", 1766 } 1767 } 1768 1769 func (s *snmpLine) beforeSave() {} 1770 1771 // +checklocksignore 1772 func (s *snmpLine) StateSave(stateSinkObject state.Sink) { 1773 s.beforeSave() 1774 stateSinkObject.Save(0, &s.prefix) 1775 stateSinkObject.Save(1, &s.header) 1776 } 1777 1778 func (s *snmpLine) afterLoad(context.Context) {} 1779 1780 // +checklocksignore 1781 func (s *snmpLine) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1782 stateSourceObject.Load(0, &s.prefix) 1783 stateSourceObject.Load(1, &s.header) 1784 } 1785 1786 func (d *netRouteData) StateTypeName() string { 1787 return "pkg/sentry/fsimpl/proc.netRouteData" 1788 } 1789 1790 func (d *netRouteData) StateFields() []string { 1791 return []string{ 1792 "DynamicBytesFile", 1793 "stack", 1794 } 1795 } 1796 1797 func (d *netRouteData) beforeSave() {} 1798 1799 // +checklocksignore 1800 func (d *netRouteData) StateSave(stateSinkObject state.Sink) { 1801 d.beforeSave() 1802 stateSinkObject.Save(0, &d.DynamicBytesFile) 1803 stateSinkObject.Save(1, &d.stack) 1804 } 1805 1806 func (d *netRouteData) afterLoad(context.Context) {} 1807 1808 // +checklocksignore 1809 func (d *netRouteData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1810 stateSourceObject.Load(0, &d.DynamicBytesFile) 1811 stateSourceObject.Load(1, &d.stack) 1812 } 1813 1814 func (d *netStatData) StateTypeName() string { 1815 return "pkg/sentry/fsimpl/proc.netStatData" 1816 } 1817 1818 func (d *netStatData) StateFields() []string { 1819 return []string{ 1820 "DynamicBytesFile", 1821 "stack", 1822 } 1823 } 1824 1825 func (d *netStatData) beforeSave() {} 1826 1827 // +checklocksignore 1828 func (d *netStatData) StateSave(stateSinkObject state.Sink) { 1829 d.beforeSave() 1830 stateSinkObject.Save(0, &d.DynamicBytesFile) 1831 stateSinkObject.Save(1, &d.stack) 1832 } 1833 1834 func (d *netStatData) afterLoad(context.Context) {} 1835 1836 // +checklocksignore 1837 func (d *netStatData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1838 stateSourceObject.Load(0, &d.DynamicBytesFile) 1839 stateSourceObject.Load(1, &d.stack) 1840 } 1841 1842 func (i *tasksInode) StateTypeName() string { 1843 return "pkg/sentry/fsimpl/proc.tasksInode" 1844 } 1845 1846 func (i *tasksInode) StateFields() []string { 1847 return []string{ 1848 "implStatFS", 1849 "InodeAlwaysValid", 1850 "InodeAttrs", 1851 "InodeDirectoryNoNewChildren", 1852 "InodeNotAnonymous", 1853 "InodeNotSymlink", 1854 "InodeTemporary", 1855 "InodeWatches", 1856 "OrderedChildren", 1857 "tasksInodeRefs", 1858 "locks", 1859 "fs", 1860 "pidns", 1861 "fakeCgroupControllers", 1862 } 1863 } 1864 1865 func (i *tasksInode) beforeSave() {} 1866 1867 // +checklocksignore 1868 func (i *tasksInode) StateSave(stateSinkObject state.Sink) { 1869 i.beforeSave() 1870 stateSinkObject.Save(0, &i.implStatFS) 1871 stateSinkObject.Save(1, &i.InodeAlwaysValid) 1872 stateSinkObject.Save(2, &i.InodeAttrs) 1873 stateSinkObject.Save(3, &i.InodeDirectoryNoNewChildren) 1874 stateSinkObject.Save(4, &i.InodeNotAnonymous) 1875 stateSinkObject.Save(5, &i.InodeNotSymlink) 1876 stateSinkObject.Save(6, &i.InodeTemporary) 1877 stateSinkObject.Save(7, &i.InodeWatches) 1878 stateSinkObject.Save(8, &i.OrderedChildren) 1879 stateSinkObject.Save(9, &i.tasksInodeRefs) 1880 stateSinkObject.Save(10, &i.locks) 1881 stateSinkObject.Save(11, &i.fs) 1882 stateSinkObject.Save(12, &i.pidns) 1883 stateSinkObject.Save(13, &i.fakeCgroupControllers) 1884 } 1885 1886 func (i *tasksInode) afterLoad(context.Context) {} 1887 1888 // +checklocksignore 1889 func (i *tasksInode) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1890 stateSourceObject.Load(0, &i.implStatFS) 1891 stateSourceObject.Load(1, &i.InodeAlwaysValid) 1892 stateSourceObject.Load(2, &i.InodeAttrs) 1893 stateSourceObject.Load(3, &i.InodeDirectoryNoNewChildren) 1894 stateSourceObject.Load(4, &i.InodeNotAnonymous) 1895 stateSourceObject.Load(5, &i.InodeNotSymlink) 1896 stateSourceObject.Load(6, &i.InodeTemporary) 1897 stateSourceObject.Load(7, &i.InodeWatches) 1898 stateSourceObject.Load(8, &i.OrderedChildren) 1899 stateSourceObject.Load(9, &i.tasksInodeRefs) 1900 stateSourceObject.Load(10, &i.locks) 1901 stateSourceObject.Load(11, &i.fs) 1902 stateSourceObject.Load(12, &i.pidns) 1903 stateSourceObject.Load(13, &i.fakeCgroupControllers) 1904 } 1905 1906 func (s *staticFileSetStat) StateTypeName() string { 1907 return "pkg/sentry/fsimpl/proc.staticFileSetStat" 1908 } 1909 1910 func (s *staticFileSetStat) StateFields() []string { 1911 return []string{ 1912 "dynamicBytesFileSetAttr", 1913 "StaticData", 1914 } 1915 } 1916 1917 func (s *staticFileSetStat) beforeSave() {} 1918 1919 // +checklocksignore 1920 func (s *staticFileSetStat) StateSave(stateSinkObject state.Sink) { 1921 s.beforeSave() 1922 stateSinkObject.Save(0, &s.dynamicBytesFileSetAttr) 1923 stateSinkObject.Save(1, &s.StaticData) 1924 } 1925 1926 func (s *staticFileSetStat) afterLoad(context.Context) {} 1927 1928 // +checklocksignore 1929 func (s *staticFileSetStat) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1930 stateSourceObject.Load(0, &s.dynamicBytesFileSetAttr) 1931 stateSourceObject.Load(1, &s.StaticData) 1932 } 1933 1934 func (s *selfSymlink) StateTypeName() string { 1935 return "pkg/sentry/fsimpl/proc.selfSymlink" 1936 } 1937 1938 func (s *selfSymlink) StateFields() []string { 1939 return []string{ 1940 "implStatFS", 1941 "InodeAttrs", 1942 "InodeNoopRefCount", 1943 "InodeNotAnonymous", 1944 "InodeSymlink", 1945 "InodeWatches", 1946 "pidns", 1947 } 1948 } 1949 1950 func (s *selfSymlink) beforeSave() {} 1951 1952 // +checklocksignore 1953 func (s *selfSymlink) StateSave(stateSinkObject state.Sink) { 1954 s.beforeSave() 1955 stateSinkObject.Save(0, &s.implStatFS) 1956 stateSinkObject.Save(1, &s.InodeAttrs) 1957 stateSinkObject.Save(2, &s.InodeNoopRefCount) 1958 stateSinkObject.Save(3, &s.InodeNotAnonymous) 1959 stateSinkObject.Save(4, &s.InodeSymlink) 1960 stateSinkObject.Save(5, &s.InodeWatches) 1961 stateSinkObject.Save(6, &s.pidns) 1962 } 1963 1964 func (s *selfSymlink) afterLoad(context.Context) {} 1965 1966 // +checklocksignore 1967 func (s *selfSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 1968 stateSourceObject.Load(0, &s.implStatFS) 1969 stateSourceObject.Load(1, &s.InodeAttrs) 1970 stateSourceObject.Load(2, &s.InodeNoopRefCount) 1971 stateSourceObject.Load(3, &s.InodeNotAnonymous) 1972 stateSourceObject.Load(4, &s.InodeSymlink) 1973 stateSourceObject.Load(5, &s.InodeWatches) 1974 stateSourceObject.Load(6, &s.pidns) 1975 } 1976 1977 func (s *threadSelfSymlink) StateTypeName() string { 1978 return "pkg/sentry/fsimpl/proc.threadSelfSymlink" 1979 } 1980 1981 func (s *threadSelfSymlink) StateFields() []string { 1982 return []string{ 1983 "implStatFS", 1984 "InodeAttrs", 1985 "InodeNoopRefCount", 1986 "InodeNotAnonymous", 1987 "InodeSymlink", 1988 "InodeWatches", 1989 "pidns", 1990 } 1991 } 1992 1993 func (s *threadSelfSymlink) beforeSave() {} 1994 1995 // +checklocksignore 1996 func (s *threadSelfSymlink) StateSave(stateSinkObject state.Sink) { 1997 s.beforeSave() 1998 stateSinkObject.Save(0, &s.implStatFS) 1999 stateSinkObject.Save(1, &s.InodeAttrs) 2000 stateSinkObject.Save(2, &s.InodeNoopRefCount) 2001 stateSinkObject.Save(3, &s.InodeNotAnonymous) 2002 stateSinkObject.Save(4, &s.InodeSymlink) 2003 stateSinkObject.Save(5, &s.InodeWatches) 2004 stateSinkObject.Save(6, &s.pidns) 2005 } 2006 2007 func (s *threadSelfSymlink) afterLoad(context.Context) {} 2008 2009 // +checklocksignore 2010 func (s *threadSelfSymlink) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2011 stateSourceObject.Load(0, &s.implStatFS) 2012 stateSourceObject.Load(1, &s.InodeAttrs) 2013 stateSourceObject.Load(2, &s.InodeNoopRefCount) 2014 stateSourceObject.Load(3, &s.InodeNotAnonymous) 2015 stateSourceObject.Load(4, &s.InodeSymlink) 2016 stateSourceObject.Load(5, &s.InodeWatches) 2017 stateSourceObject.Load(6, &s.pidns) 2018 } 2019 2020 func (d *dynamicBytesFileSetAttr) StateTypeName() string { 2021 return "pkg/sentry/fsimpl/proc.dynamicBytesFileSetAttr" 2022 } 2023 2024 func (d *dynamicBytesFileSetAttr) StateFields() []string { 2025 return []string{ 2026 "DynamicBytesFile", 2027 } 2028 } 2029 2030 func (d *dynamicBytesFileSetAttr) beforeSave() {} 2031 2032 // +checklocksignore 2033 func (d *dynamicBytesFileSetAttr) StateSave(stateSinkObject state.Sink) { 2034 d.beforeSave() 2035 stateSinkObject.Save(0, &d.DynamicBytesFile) 2036 } 2037 2038 func (d *dynamicBytesFileSetAttr) afterLoad(context.Context) {} 2039 2040 // +checklocksignore 2041 func (d *dynamicBytesFileSetAttr) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2042 stateSourceObject.Load(0, &d.DynamicBytesFile) 2043 } 2044 2045 func (c *cpuStats) StateTypeName() string { 2046 return "pkg/sentry/fsimpl/proc.cpuStats" 2047 } 2048 2049 func (c *cpuStats) StateFields() []string { 2050 return []string{ 2051 "user", 2052 "nice", 2053 "system", 2054 "idle", 2055 "ioWait", 2056 "irq", 2057 "softirq", 2058 "steal", 2059 "guest", 2060 "guestNice", 2061 } 2062 } 2063 2064 func (c *cpuStats) beforeSave() {} 2065 2066 // +checklocksignore 2067 func (c *cpuStats) StateSave(stateSinkObject state.Sink) { 2068 c.beforeSave() 2069 stateSinkObject.Save(0, &c.user) 2070 stateSinkObject.Save(1, &c.nice) 2071 stateSinkObject.Save(2, &c.system) 2072 stateSinkObject.Save(3, &c.idle) 2073 stateSinkObject.Save(4, &c.ioWait) 2074 stateSinkObject.Save(5, &c.irq) 2075 stateSinkObject.Save(6, &c.softirq) 2076 stateSinkObject.Save(7, &c.steal) 2077 stateSinkObject.Save(8, &c.guest) 2078 stateSinkObject.Save(9, &c.guestNice) 2079 } 2080 2081 func (c *cpuStats) afterLoad(context.Context) {} 2082 2083 // +checklocksignore 2084 func (c *cpuStats) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2085 stateSourceObject.Load(0, &c.user) 2086 stateSourceObject.Load(1, &c.nice) 2087 stateSourceObject.Load(2, &c.system) 2088 stateSourceObject.Load(3, &c.idle) 2089 stateSourceObject.Load(4, &c.ioWait) 2090 stateSourceObject.Load(5, &c.irq) 2091 stateSourceObject.Load(6, &c.softirq) 2092 stateSourceObject.Load(7, &c.steal) 2093 stateSourceObject.Load(8, &c.guest) 2094 stateSourceObject.Load(9, &c.guestNice) 2095 } 2096 2097 func (s *statData) StateTypeName() string { 2098 return "pkg/sentry/fsimpl/proc.statData" 2099 } 2100 2101 func (s *statData) StateFields() []string { 2102 return []string{ 2103 "dynamicBytesFileSetAttr", 2104 } 2105 } 2106 2107 func (s *statData) beforeSave() {} 2108 2109 // +checklocksignore 2110 func (s *statData) StateSave(stateSinkObject state.Sink) { 2111 s.beforeSave() 2112 stateSinkObject.Save(0, &s.dynamicBytesFileSetAttr) 2113 } 2114 2115 func (s *statData) afterLoad(context.Context) {} 2116 2117 // +checklocksignore 2118 func (s *statData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2119 stateSourceObject.Load(0, &s.dynamicBytesFileSetAttr) 2120 } 2121 2122 func (l *loadavgData) StateTypeName() string { 2123 return "pkg/sentry/fsimpl/proc.loadavgData" 2124 } 2125 2126 func (l *loadavgData) StateFields() []string { 2127 return []string{ 2128 "dynamicBytesFileSetAttr", 2129 } 2130 } 2131 2132 func (l *loadavgData) beforeSave() {} 2133 2134 // +checklocksignore 2135 func (l *loadavgData) StateSave(stateSinkObject state.Sink) { 2136 l.beforeSave() 2137 stateSinkObject.Save(0, &l.dynamicBytesFileSetAttr) 2138 } 2139 2140 func (l *loadavgData) afterLoad(context.Context) {} 2141 2142 // +checklocksignore 2143 func (l *loadavgData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2144 stateSourceObject.Load(0, &l.dynamicBytesFileSetAttr) 2145 } 2146 2147 func (m *meminfoData) StateTypeName() string { 2148 return "pkg/sentry/fsimpl/proc.meminfoData" 2149 } 2150 2151 func (m *meminfoData) StateFields() []string { 2152 return []string{ 2153 "dynamicBytesFileSetAttr", 2154 } 2155 } 2156 2157 func (m *meminfoData) beforeSave() {} 2158 2159 // +checklocksignore 2160 func (m *meminfoData) StateSave(stateSinkObject state.Sink) { 2161 m.beforeSave() 2162 stateSinkObject.Save(0, &m.dynamicBytesFileSetAttr) 2163 } 2164 2165 func (m *meminfoData) afterLoad(context.Context) {} 2166 2167 // +checklocksignore 2168 func (m *meminfoData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2169 stateSourceObject.Load(0, &m.dynamicBytesFileSetAttr) 2170 } 2171 2172 func (u *uptimeData) StateTypeName() string { 2173 return "pkg/sentry/fsimpl/proc.uptimeData" 2174 } 2175 2176 func (u *uptimeData) StateFields() []string { 2177 return []string{ 2178 "dynamicBytesFileSetAttr", 2179 } 2180 } 2181 2182 func (u *uptimeData) beforeSave() {} 2183 2184 // +checklocksignore 2185 func (u *uptimeData) StateSave(stateSinkObject state.Sink) { 2186 u.beforeSave() 2187 stateSinkObject.Save(0, &u.dynamicBytesFileSetAttr) 2188 } 2189 2190 func (u *uptimeData) afterLoad(context.Context) {} 2191 2192 // +checklocksignore 2193 func (u *uptimeData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2194 stateSourceObject.Load(0, &u.dynamicBytesFileSetAttr) 2195 } 2196 2197 func (v *versionData) StateTypeName() string { 2198 return "pkg/sentry/fsimpl/proc.versionData" 2199 } 2200 2201 func (v *versionData) StateFields() []string { 2202 return []string{ 2203 "dynamicBytesFileSetAttr", 2204 } 2205 } 2206 2207 func (v *versionData) beforeSave() {} 2208 2209 // +checklocksignore 2210 func (v *versionData) StateSave(stateSinkObject state.Sink) { 2211 v.beforeSave() 2212 stateSinkObject.Save(0, &v.dynamicBytesFileSetAttr) 2213 } 2214 2215 func (v *versionData) afterLoad(context.Context) {} 2216 2217 // +checklocksignore 2218 func (v *versionData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2219 stateSourceObject.Load(0, &v.dynamicBytesFileSetAttr) 2220 } 2221 2222 func (d *filesystemsData) StateTypeName() string { 2223 return "pkg/sentry/fsimpl/proc.filesystemsData" 2224 } 2225 2226 func (d *filesystemsData) StateFields() []string { 2227 return []string{ 2228 "DynamicBytesFile", 2229 } 2230 } 2231 2232 func (d *filesystemsData) beforeSave() {} 2233 2234 // +checklocksignore 2235 func (d *filesystemsData) StateSave(stateSinkObject state.Sink) { 2236 d.beforeSave() 2237 stateSinkObject.Save(0, &d.DynamicBytesFile) 2238 } 2239 2240 func (d *filesystemsData) afterLoad(context.Context) {} 2241 2242 // +checklocksignore 2243 func (d *filesystemsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2244 stateSourceObject.Load(0, &d.DynamicBytesFile) 2245 } 2246 2247 func (c *cgroupsData) StateTypeName() string { 2248 return "pkg/sentry/fsimpl/proc.cgroupsData" 2249 } 2250 2251 func (c *cgroupsData) StateFields() []string { 2252 return []string{ 2253 "dynamicBytesFileSetAttr", 2254 } 2255 } 2256 2257 func (c *cgroupsData) beforeSave() {} 2258 2259 // +checklocksignore 2260 func (c *cgroupsData) StateSave(stateSinkObject state.Sink) { 2261 c.beforeSave() 2262 stateSinkObject.Save(0, &c.dynamicBytesFileSetAttr) 2263 } 2264 2265 func (c *cgroupsData) afterLoad(context.Context) {} 2266 2267 // +checklocksignore 2268 func (c *cgroupsData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2269 stateSourceObject.Load(0, &c.dynamicBytesFileSetAttr) 2270 } 2271 2272 func (c *cmdLineData) StateTypeName() string { 2273 return "pkg/sentry/fsimpl/proc.cmdLineData" 2274 } 2275 2276 func (c *cmdLineData) StateFields() []string { 2277 return []string{ 2278 "dynamicBytesFileSetAttr", 2279 } 2280 } 2281 2282 func (c *cmdLineData) beforeSave() {} 2283 2284 // +checklocksignore 2285 func (c *cmdLineData) StateSave(stateSinkObject state.Sink) { 2286 c.beforeSave() 2287 stateSinkObject.Save(0, &c.dynamicBytesFileSetAttr) 2288 } 2289 2290 func (c *cmdLineData) afterLoad(context.Context) {} 2291 2292 // +checklocksignore 2293 func (c *cmdLineData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2294 stateSourceObject.Load(0, &c.dynamicBytesFileSetAttr) 2295 } 2296 2297 func (s *sentryMeminfoData) StateTypeName() string { 2298 return "pkg/sentry/fsimpl/proc.sentryMeminfoData" 2299 } 2300 2301 func (s *sentryMeminfoData) StateFields() []string { 2302 return []string{ 2303 "dynamicBytesFileSetAttr", 2304 } 2305 } 2306 2307 func (s *sentryMeminfoData) beforeSave() {} 2308 2309 // +checklocksignore 2310 func (s *sentryMeminfoData) StateSave(stateSinkObject state.Sink) { 2311 s.beforeSave() 2312 stateSinkObject.Save(0, &s.dynamicBytesFileSetAttr) 2313 } 2314 2315 func (s *sentryMeminfoData) afterLoad(context.Context) {} 2316 2317 // +checklocksignore 2318 func (s *sentryMeminfoData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2319 stateSourceObject.Load(0, &s.dynamicBytesFileSetAttr) 2320 } 2321 2322 func (r *tasksInodeRefs) StateTypeName() string { 2323 return "pkg/sentry/fsimpl/proc.tasksInodeRefs" 2324 } 2325 2326 func (r *tasksInodeRefs) StateFields() []string { 2327 return []string{ 2328 "refCount", 2329 } 2330 } 2331 2332 func (r *tasksInodeRefs) beforeSave() {} 2333 2334 // +checklocksignore 2335 func (r *tasksInodeRefs) StateSave(stateSinkObject state.Sink) { 2336 r.beforeSave() 2337 stateSinkObject.Save(0, &r.refCount) 2338 } 2339 2340 // +checklocksignore 2341 func (r *tasksInodeRefs) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2342 stateSourceObject.Load(0, &r.refCount) 2343 stateSourceObject.AfterLoad(func() { r.afterLoad(ctx) }) 2344 } 2345 2346 func (t *tcpMemDir) StateTypeName() string { 2347 return "pkg/sentry/fsimpl/proc.tcpMemDir" 2348 } 2349 2350 func (t *tcpMemDir) StateFields() []string { 2351 return nil 2352 } 2353 2354 func (d *mmapMinAddrData) StateTypeName() string { 2355 return "pkg/sentry/fsimpl/proc.mmapMinAddrData" 2356 } 2357 2358 func (d *mmapMinAddrData) StateFields() []string { 2359 return []string{ 2360 "DynamicBytesFile", 2361 "k", 2362 } 2363 } 2364 2365 func (d *mmapMinAddrData) beforeSave() {} 2366 2367 // +checklocksignore 2368 func (d *mmapMinAddrData) StateSave(stateSinkObject state.Sink) { 2369 d.beforeSave() 2370 stateSinkObject.Save(0, &d.DynamicBytesFile) 2371 stateSinkObject.Save(1, &d.k) 2372 } 2373 2374 func (d *mmapMinAddrData) afterLoad(context.Context) {} 2375 2376 // +checklocksignore 2377 func (d *mmapMinAddrData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2378 stateSourceObject.Load(0, &d.DynamicBytesFile) 2379 stateSourceObject.Load(1, &d.k) 2380 } 2381 2382 func (h *hostnameData) StateTypeName() string { 2383 return "pkg/sentry/fsimpl/proc.hostnameData" 2384 } 2385 2386 func (h *hostnameData) StateFields() []string { 2387 return []string{ 2388 "DynamicBytesFile", 2389 } 2390 } 2391 2392 func (h *hostnameData) beforeSave() {} 2393 2394 // +checklocksignore 2395 func (h *hostnameData) StateSave(stateSinkObject state.Sink) { 2396 h.beforeSave() 2397 stateSinkObject.Save(0, &h.DynamicBytesFile) 2398 } 2399 2400 func (h *hostnameData) afterLoad(context.Context) {} 2401 2402 // +checklocksignore 2403 func (h *hostnameData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2404 stateSourceObject.Load(0, &h.DynamicBytesFile) 2405 } 2406 2407 func (d *tcpSackData) StateTypeName() string { 2408 return "pkg/sentry/fsimpl/proc.tcpSackData" 2409 } 2410 2411 func (d *tcpSackData) StateFields() []string { 2412 return []string{ 2413 "DynamicBytesFile", 2414 "stack", 2415 "enabled", 2416 } 2417 } 2418 2419 func (d *tcpSackData) beforeSave() {} 2420 2421 // +checklocksignore 2422 func (d *tcpSackData) StateSave(stateSinkObject state.Sink) { 2423 d.beforeSave() 2424 stateSinkObject.Save(0, &d.DynamicBytesFile) 2425 stateSinkObject.Save(1, &d.stack) 2426 stateSinkObject.Save(2, &d.enabled) 2427 } 2428 2429 func (d *tcpSackData) afterLoad(context.Context) {} 2430 2431 // +checklocksignore 2432 func (d *tcpSackData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2433 stateSourceObject.Load(0, &d.DynamicBytesFile) 2434 stateSourceObject.LoadWait(1, &d.stack) 2435 stateSourceObject.Load(2, &d.enabled) 2436 } 2437 2438 func (d *tcpRecoveryData) StateTypeName() string { 2439 return "pkg/sentry/fsimpl/proc.tcpRecoveryData" 2440 } 2441 2442 func (d *tcpRecoveryData) StateFields() []string { 2443 return []string{ 2444 "DynamicBytesFile", 2445 "stack", 2446 } 2447 } 2448 2449 func (d *tcpRecoveryData) beforeSave() {} 2450 2451 // +checklocksignore 2452 func (d *tcpRecoveryData) StateSave(stateSinkObject state.Sink) { 2453 d.beforeSave() 2454 stateSinkObject.Save(0, &d.DynamicBytesFile) 2455 stateSinkObject.Save(1, &d.stack) 2456 } 2457 2458 func (d *tcpRecoveryData) afterLoad(context.Context) {} 2459 2460 // +checklocksignore 2461 func (d *tcpRecoveryData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2462 stateSourceObject.Load(0, &d.DynamicBytesFile) 2463 stateSourceObject.LoadWait(1, &d.stack) 2464 } 2465 2466 func (d *tcpMemData) StateTypeName() string { 2467 return "pkg/sentry/fsimpl/proc.tcpMemData" 2468 } 2469 2470 func (d *tcpMemData) StateFields() []string { 2471 return []string{ 2472 "DynamicBytesFile", 2473 "dir", 2474 "stack", 2475 } 2476 } 2477 2478 func (d *tcpMemData) beforeSave() {} 2479 2480 // +checklocksignore 2481 func (d *tcpMemData) StateSave(stateSinkObject state.Sink) { 2482 d.beforeSave() 2483 stateSinkObject.Save(0, &d.DynamicBytesFile) 2484 stateSinkObject.Save(1, &d.dir) 2485 stateSinkObject.Save(2, &d.stack) 2486 } 2487 2488 func (d *tcpMemData) afterLoad(context.Context) {} 2489 2490 // +checklocksignore 2491 func (d *tcpMemData) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2492 stateSourceObject.Load(0, &d.DynamicBytesFile) 2493 stateSourceObject.Load(1, &d.dir) 2494 stateSourceObject.LoadWait(2, &d.stack) 2495 } 2496 2497 func (ipf *ipForwarding) StateTypeName() string { 2498 return "pkg/sentry/fsimpl/proc.ipForwarding" 2499 } 2500 2501 func (ipf *ipForwarding) StateFields() []string { 2502 return []string{ 2503 "DynamicBytesFile", 2504 "stack", 2505 "enabled", 2506 } 2507 } 2508 2509 func (ipf *ipForwarding) beforeSave() {} 2510 2511 // +checklocksignore 2512 func (ipf *ipForwarding) StateSave(stateSinkObject state.Sink) { 2513 ipf.beforeSave() 2514 stateSinkObject.Save(0, &ipf.DynamicBytesFile) 2515 stateSinkObject.Save(1, &ipf.stack) 2516 stateSinkObject.Save(2, &ipf.enabled) 2517 } 2518 2519 func (ipf *ipForwarding) afterLoad(context.Context) {} 2520 2521 // +checklocksignore 2522 func (ipf *ipForwarding) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2523 stateSourceObject.Load(0, &ipf.DynamicBytesFile) 2524 stateSourceObject.LoadWait(1, &ipf.stack) 2525 stateSourceObject.Load(2, &ipf.enabled) 2526 } 2527 2528 func (pr *portRange) StateTypeName() string { 2529 return "pkg/sentry/fsimpl/proc.portRange" 2530 } 2531 2532 func (pr *portRange) StateFields() []string { 2533 return []string{ 2534 "DynamicBytesFile", 2535 "stack", 2536 "start", 2537 "end", 2538 } 2539 } 2540 2541 func (pr *portRange) beforeSave() {} 2542 2543 // +checklocksignore 2544 func (pr *portRange) StateSave(stateSinkObject state.Sink) { 2545 pr.beforeSave() 2546 stateSinkObject.Save(0, &pr.DynamicBytesFile) 2547 stateSinkObject.Save(1, &pr.stack) 2548 stateSinkObject.Save(2, &pr.start) 2549 stateSinkObject.Save(3, &pr.end) 2550 } 2551 2552 func (pr *portRange) afterLoad(context.Context) {} 2553 2554 // +checklocksignore 2555 func (pr *portRange) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2556 stateSourceObject.Load(0, &pr.DynamicBytesFile) 2557 stateSourceObject.LoadWait(1, &pr.stack) 2558 stateSourceObject.Load(2, &pr.start) 2559 stateSourceObject.Load(3, &pr.end) 2560 } 2561 2562 func (f *atomicInt32File) StateTypeName() string { 2563 return "pkg/sentry/fsimpl/proc.atomicInt32File" 2564 } 2565 2566 func (f *atomicInt32File) StateFields() []string { 2567 return []string{ 2568 "DynamicBytesFile", 2569 "val", 2570 "min", 2571 "max", 2572 } 2573 } 2574 2575 func (f *atomicInt32File) beforeSave() {} 2576 2577 // +checklocksignore 2578 func (f *atomicInt32File) StateSave(stateSinkObject state.Sink) { 2579 f.beforeSave() 2580 stateSinkObject.Save(0, &f.DynamicBytesFile) 2581 stateSinkObject.Save(1, &f.val) 2582 stateSinkObject.Save(2, &f.min) 2583 stateSinkObject.Save(3, &f.max) 2584 } 2585 2586 func (f *atomicInt32File) afterLoad(context.Context) {} 2587 2588 // +checklocksignore 2589 func (f *atomicInt32File) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2590 stateSourceObject.Load(0, &f.DynamicBytesFile) 2591 stateSourceObject.Load(1, &f.val) 2592 stateSourceObject.Load(2, &f.min) 2593 stateSourceObject.Load(3, &f.max) 2594 } 2595 2596 func (s *yamaPtraceScope) StateTypeName() string { 2597 return "pkg/sentry/fsimpl/proc.yamaPtraceScope" 2598 } 2599 2600 func (s *yamaPtraceScope) StateFields() []string { 2601 return []string{ 2602 "DynamicBytesFile", 2603 "level", 2604 } 2605 } 2606 2607 func (s *yamaPtraceScope) beforeSave() {} 2608 2609 // +checklocksignore 2610 func (s *yamaPtraceScope) StateSave(stateSinkObject state.Sink) { 2611 s.beforeSave() 2612 stateSinkObject.Save(0, &s.DynamicBytesFile) 2613 stateSinkObject.Save(1, &s.level) 2614 } 2615 2616 func (s *yamaPtraceScope) afterLoad(context.Context) {} 2617 2618 // +checklocksignore 2619 func (s *yamaPtraceScope) StateLoad(ctx context.Context, stateSourceObject state.Source) { 2620 stateSourceObject.Load(0, &s.DynamicBytesFile) 2621 stateSourceObject.Load(1, &s.level) 2622 } 2623 2624 func init() { 2625 state.Register((*fdDirInodeRefs)(nil)) 2626 state.Register((*fdInfoDirInodeRefs)(nil)) 2627 state.Register((*FilesystemType)(nil)) 2628 state.Register((*filesystem)(nil)) 2629 state.Register((*staticFile)(nil)) 2630 state.Register((*InternalData)(nil)) 2631 state.Register((*implStatFS)(nil)) 2632 state.Register((*subtasksInode)(nil)) 2633 state.Register((*subtasksFD)(nil)) 2634 state.Register((*subtasksInodeRefs)(nil)) 2635 state.Register((*taskInode)(nil)) 2636 state.Register((*taskOwnedInode)(nil)) 2637 state.Register((*fdDir)(nil)) 2638 state.Register((*fdDirInode)(nil)) 2639 state.Register((*fdSymlink)(nil)) 2640 state.Register((*fdInfoDirInode)(nil)) 2641 state.Register((*fdInfoData)(nil)) 2642 state.Register((*auxvData)(nil)) 2643 state.Register((*metadataData)(nil)) 2644 state.Register((*commInode)(nil)) 2645 state.Register((*commData)(nil)) 2646 state.Register((*idMapData)(nil)) 2647 state.Register((*memInode)(nil)) 2648 state.Register((*memFD)(nil)) 2649 state.Register((*limitsData)(nil)) 2650 state.Register((*mapsData)(nil)) 2651 state.Register((*smapsData)(nil)) 2652 state.Register((*taskStatData)(nil)) 2653 state.Register((*statmData)(nil)) 2654 state.Register((*statusInode)(nil)) 2655 state.Register((*statusFD)(nil)) 2656 state.Register((*statusFDLowerBase)(nil)) 2657 state.Register((*ioData)(nil)) 2658 state.Register((*oomScoreAdj)(nil)) 2659 state.Register((*exeSymlink)(nil)) 2660 state.Register((*cwdSymlink)(nil)) 2661 state.Register((*rootSymlink)(nil)) 2662 state.Register((*mountInfoData)(nil)) 2663 state.Register((*mountsData)(nil)) 2664 state.Register((*namespaceSymlink)(nil)) 2665 state.Register((*namespaceInode)(nil)) 2666 state.Register((*namespaceFD)(nil)) 2667 state.Register((*taskCgroupData)(nil)) 2668 state.Register((*childrenData)(nil)) 2669 state.Register((*taskInodeRefs)(nil)) 2670 state.Register((*ifinet6)(nil)) 2671 state.Register((*netDevData)(nil)) 2672 state.Register((*netUnixData)(nil)) 2673 state.Register((*netTCPData)(nil)) 2674 state.Register((*netTCP6Data)(nil)) 2675 state.Register((*netUDPData)(nil)) 2676 state.Register((*netSnmpData)(nil)) 2677 state.Register((*snmpLine)(nil)) 2678 state.Register((*netRouteData)(nil)) 2679 state.Register((*netStatData)(nil)) 2680 state.Register((*tasksInode)(nil)) 2681 state.Register((*staticFileSetStat)(nil)) 2682 state.Register((*selfSymlink)(nil)) 2683 state.Register((*threadSelfSymlink)(nil)) 2684 state.Register((*dynamicBytesFileSetAttr)(nil)) 2685 state.Register((*cpuStats)(nil)) 2686 state.Register((*statData)(nil)) 2687 state.Register((*loadavgData)(nil)) 2688 state.Register((*meminfoData)(nil)) 2689 state.Register((*uptimeData)(nil)) 2690 state.Register((*versionData)(nil)) 2691 state.Register((*filesystemsData)(nil)) 2692 state.Register((*cgroupsData)(nil)) 2693 state.Register((*cmdLineData)(nil)) 2694 state.Register((*sentryMeminfoData)(nil)) 2695 state.Register((*tasksInodeRefs)(nil)) 2696 state.Register((*tcpMemDir)(nil)) 2697 state.Register((*mmapMinAddrData)(nil)) 2698 state.Register((*hostnameData)(nil)) 2699 state.Register((*tcpSackData)(nil)) 2700 state.Register((*tcpRecoveryData)(nil)) 2701 state.Register((*tcpMemData)(nil)) 2702 state.Register((*ipForwarding)(nil)) 2703 state.Register((*portRange)(nil)) 2704 state.Register((*atomicInt32File)(nil)) 2705 state.Register((*yamaPtraceScope)(nil)) 2706 }