BIND 10 #2850: Define and implement ZoneTableSegmentMapped

BIND 10 Development do-not-reply at isc.org
Tue May 28 21:58:31 UTC 2013


#2850: Define and implement ZoneTableSegmentMapped
-------------------------------------+-------------------------------------
            Reporter:  jinmei        |                        Owner:
                Type:  task          |  jinmei
            Priority:  medium        |                       Status:
           Component:  data source   |  reviewing
            Keywords:                |                    Milestone:
           Sensitive:  0             |  Sprint-20130611
         Sub-Project:  DNS           |                   Resolution:
Estimated Difficulty:  5             |                 CVSS Scoring:
         Total Hours:  0             |              Defect Severity:  N/A
                                     |  Feature Depending on Ticket:
                                     |  shared memory data source
                                     |          Add Hours to Ticket:  0
                                     |                    Internal?:  0
-------------------------------------+-------------------------------------

Comment (by jinmei):

 Replying to [comment:33 muks]:

 > > - I'd make sure memory relocation doesn't happen in `reserveMemory` if
 > >   called from `allMemoryDeallocated` (it shouldn't happen for the same
 > >   reason as above).  passing an argument to prevent looping, etc.
 > >   note also that if we abort there we shouldn't need try-catch in
 > >   `allMemoryDeallocated`; no other part within the try block can
 > >   throw.
 >
 > There is a more basic question that I have. In case of read-only
 > segments, with our current design `allMemoryDeallocated()` will not
 > work.

 As answered yourself, this should be okay.  I also suggest applying
 the attached patch for the point above.

 > > '''zone_writer.cc'''

 > > while almost out of scope for this ticket, there's still one more
 > > glitch in `ZoneWriter::install`: `zone_data_` can be relocated on
 > > `MemorySegmentGrown`.  Further, in general, we should protect
 > > `zone_data_` immediately after the call to `load_action_`.  This will
 > > be beyond a trivial change, and I don't want to delay this task even
 > > further, but at the same time I don't want to leave the flaw longer.
 [...]
 > This was reviewed and pushed.

 Thanks, but I found it was still not complete: we need to expect and
 handle the case creating the segment object holder throws
 `MemorySegmentGrown`.
 Please check the attached patch and apply it.

 If you are okay with these two points, I think the branch is finally
 ready for final merge.

-- 
Ticket URL: <http://bind10.isc.org/ticket/2850#comment:35>
BIND 10 Development <http://bind10.isc.org>
BIND 10 Development


More information about the bind10-tickets mailing list