Review Board 2.0.15


Ruby: Correctly set access permissions for directory entries

Review Request #684 - Created May 6, 2011 and submitted

Information
Nilay Vaish
gem5
default
Reviewers
Default
Ruby: Correctly set access permissions for directory entries
The access permissions for the directory entries are not being set correctly.
This is because pointers are not used for handling directory entries.
function. get and set functions for access permissions have been added to the
Controller state machine. The changePermission() function provided by the
AbstractEntry and AbstractCacheEntry classes has been exposed to SLICC
code once again. The set_permission() functionality has been removed.

NOTE: Each protocol will have to define these get and set functions in order
to compile successfully.
Passes regression tests and 10000 loads with ruby random tester.
Review request changed
Updated (June 6, 2011, 7:45 a.m.)

Testing Done:

  +

Passes regression tests and 10000 loads with ruby random tester.

Ship it!
Posted (June 8, 2011, 10:11 a.m.)
This looks fine to me.  I assume that if a controller doesn't include a setPermission or getPermission function, the compiler error message is the same as when a controller doesn't specify a getState function.  Correct?
  1. Currently SLICC does not output any error if set/getState() or
    set/getAccessPermission() are missing. But I have patch in the
    queue which enables catching these errors in SLICC. For now
    GCC outputs that a particular function has not been implemented.