From 0f75f7273d8c4ace73d93b6b00f81d53a5cf76ea Mon Sep 17 00:00:00 2001 From: Jamie Liu Date: Wed, 8 Apr 2020 18:40:46 -0700 Subject: Don't call platform.AddressSpace.MapFile with no permissions. PiperOrigin-RevId: 305598136 --- pkg/sentry/mm/address_space.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'pkg/sentry/mm/address_space.go') diff --git a/pkg/sentry/mm/address_space.go b/pkg/sentry/mm/address_space.go index 0332fc71c..5c667117c 100644 --- a/pkg/sentry/mm/address_space.go +++ b/pkg/sentry/mm/address_space.go @@ -201,8 +201,10 @@ func (mm *MemoryManager) mapASLocked(pseg pmaIterator, ar usermem.AddrRange, pre if pma.needCOW { perms.Write = false } - if err := mm.as.MapFile(pmaMapAR.Start, pma.file, pseg.fileRangeOf(pmaMapAR), perms, precommit); err != nil { - return err + if perms.Any() { // MapFile precondition + if err := mm.as.MapFile(pmaMapAR.Start, pma.file, pseg.fileRangeOf(pmaMapAR), perms, precommit); err != nil { + return err + } } pseg = pseg.NextSegment() } -- cgit v1.2.3