[Issue 5176] Limit static object sizes

d-bugmail at puremagic.com d-bugmail at puremagic.com
Mon May 20 01:07:55 PDT 2013


http://d.puremagic.com/issues/show_bug.cgi?id=5176



--- Comment #29 from deadalnix <deadalnix at gmail.com> 2013-05-20 01:07:53 PDT ---
(In reply to comment #28)
> Copying my comment from the forums so it won't get lost:
> (http://forum.dlang.org/post/fuqkpmkfdjxwgmzfizuu@forum.dlang.org)
> 
> Isn't the solution as easy as doing:
> OR PTR:[address], 0
> the same way it's done for the stack?
> 
> The offset it known at compile time in most cases, so the command 
> would be required only if both:
> * The object is larger than target OS' guard page size.
> * The position is greater than target OS' guard page size, OR is 
> unknown at compile time.
> 
> Walter: "Not a bad idea." :)

The thing is that you may get over the page protection by several dereferences.
So you must check based not on the dereferenced address, but on the maximum
addres that will be dereferenced (ie the end of the object).

It means that every single reference taking on a 4kb+ object must have a check.

-- 
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------


More information about the Digitalmars-d-bugs mailing list