Message from discussion
Fix assert in Page::Initialize. (issue 11275229)
Received: by 10.58.153.130 with SMTP id vg2mr2121373veb.30.1352469504220;
Fri, 09 Nov 2012 05:58:24 -0800 (PST)
X-BeenThere: v8-dev@googlegroups.com
Received: by 10.220.155.207 with SMTP id t15ls4570394vcw.8.gmail; Fri, 09 Nov
2012 05:58:22 -0800 (PST)
Received: by 10.59.0.194 with SMTP id ba2mr2360474ved.19.1352469502438;
Fri, 09 Nov 2012 05:58:22 -0800 (PST)
Received: by 10.59.0.194 with SMTP id ba2mr2360473ved.19.1352469502429;
Fri, 09 Nov 2012 05:58:22 -0800 (PST)
Return-Path: <3_gudUBUJABUx2C973F7x9yzCzG3zH-2C17v36....@2uix4h7xygsz66weerlq.apphosting.bounces.google.com>
Received: from mail-vc0-f199.google.com (mail-vc0-f199.google.com [209.85.220.199])
by gmr-mx.google.com with ESMTPS id bn19si5763018vdb.0.2012.11.09.05.58.22
(version=TLSv1/SSLv3 cipher=OTHER);
Fri, 09 Nov 2012 05:58:22 -0800 (PST)
Received-SPF: pass (google.com: domain of 3_gudUBUJABUx2C973F7x9yzCzG3zH-2C17v36....@2uix4h7xygsz66weerlq.apphosting.bounces.google.com designates 209.85.220.199 as permitted sender) client-ip=209.85.220.199;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of 3_gudUBUJABUx2C973F7x9yzCzG3zH-2C17v36....@2uix4h7xygsz66weerlq.apphosting.bounces.google.com designates 209.85.220.199 as permitted sender) smtp.mail=3_gudUBUJABUx2C973F7x9yzCzG3zH-2C17v36....@2uix4h7xygsz66weerlq.apphosting.bounces.google.com
Received: by mail-vc0-f199.google.com with SMTP id gb23so6488889vcb.10
for <v8-dev@googlegroups.com>; Fri, 09 Nov 2012 05:58:22 -0800 (PST)
MIME-Version: 1.0
Received: by 10.58.205.203 with SMTP id li11mr751708vec.14.1352469502309; Fri,
09 Nov 2012 05:58:22 -0800 (PST)
Reply-To: u...@chromium.org, mstarzin...@chromium.org, v8-dev@googlegroups.com
Message-ID: <089e011841b24137ab04ce105859@google.com>
Date: Fri, 09 Nov 2012 13:58:22 +0000
Subject: Fix assert in Page::Initialize. (issue 11275229)
From: u...@chromium.org
To: mstarzin...@chromium.org
Cc: v8-dev@googlegroups.com
Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes
Reviewers: Michael Starzinger,
Message:
Please take a look. This assertion hits in long running Google Drive
extension
in 64-bit Chrome.
Description:
Fix assert in Page::Initialize.
R=mstarzin...@chromium.org
Please review this at https://chromiumcodereview.appspot.com/11275229/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/spaces-inl.h
Index: src/spaces-inl.h
diff --git a/src/spaces-inl.h b/src/spaces-inl.h
index
8a576a83f606cf2adb314237fbbdca969742436b..9775e5d9427cef0a35754969fc6fbc3bb18c1da3
100644
--- a/src/spaces-inl.h
+++ b/src/spaces-inl.h
@@ -164,7 +164,10 @@ Page* Page::Initialize(Heap* heap,
Executability executable,
PagedSpace* owner) {
Page* page = reinterpret_cast<Page*>(chunk);
- ASSERT(chunk->size() <= static_cast<size_t>(kPageSize));
+ ASSERT(page->area_size() <= kPageSize);
+ // Code range allocation can return chunks larger than a page.
+ ASSERT(chunk->size() <= static_cast<size_t>(kPageSize) ||
+ executable == EXECUTABLE);
ASSERT(chunk->owner() == owner);
owner->IncreaseCapacity(page->area_size());
owner->Free(page->area_start(), page->area_size());