Needed for v.io/c/13354

MultiPart: 2/6
Change-Id: I52923fbe1fb8ddb5af0bcee9689143c181f5b5dd
diff --git a/cmd/mounttable/impl_test.go b/cmd/mounttable/impl_test.go
index f4fa627..7d7eb4d 100644
--- a/cmd/mounttable/impl_test.go
+++ b/cmd/mounttable/impl_test.go
@@ -84,7 +84,7 @@
 type dispatcher struct {
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return mounttable.MountTableServer(&server{suffix: suffix}), nil, nil
 }
 
diff --git a/lib/xrpc/xserver_test.go b/lib/xrpc/xserver_test.go
index d14ac6d..95b5e4b 100644
--- a/lib/xrpc/xserver_test.go
+++ b/lib/xrpc/xserver_test.go
@@ -47,7 +47,7 @@
 
 type dispatcher struct{}
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return &service{}, nil, nil
 }
 
diff --git a/runtime/internal/naming/namespace/all_test.go b/runtime/internal/naming/namespace/all_test.go
index a27c68e..ab4c37e 100644
--- a/runtime/internal/naming/namespace/all_test.go
+++ b/runtime/internal/naming/namespace/all_test.go
@@ -149,7 +149,7 @@
 
 type dispatcher struct{}
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return &testServer{suffix}, security.AllowEveryone(), nil
 }
 
diff --git a/runtime/internal/rpc/benchmark/glob/glob_test.go b/runtime/internal/rpc/benchmark/glob/glob_test.go
index 24e5691..a45053c 100644
--- a/runtime/internal/rpc/benchmark/glob/glob_test.go
+++ b/runtime/internal/rpc/benchmark/glob/glob_test.go
@@ -79,7 +79,7 @@
 	obj interface{}
 }
 
-func (d *disp) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *disp) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return d.obj, nil, nil
 }
 
diff --git a/runtime/internal/rpc/full_test.go b/runtime/internal/rpc/full_test.go
index 8224776..c1ca2f0 100644
--- a/runtime/internal/rpc/full_test.go
+++ b/runtime/internal/rpc/full_test.go
@@ -188,7 +188,7 @@
 
 type testServerDisp struct{ server interface{} }
 
-func (t testServerDisp) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (t testServerDisp) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	// If suffix is "nilAuth" we use default authorization, if it is "aclAuth" we
 	// use an AccessList-based authorizer, and otherwise we use the custom testServerAuthorizer.
 	var authorizer security.Authorizer
diff --git a/runtime/internal/rpc/reserved.go b/runtime/internal/rpc/reserved.go
index 57b582f..8336ecf 100644
--- a/runtime/internal/rpc/reserved.go
+++ b/runtime/internal/rpc/reserved.go
@@ -87,7 +87,7 @@
 	if disp == nil {
 		return nil, verror.New(verror.ErrUnknownSuffix, ctx, suffix)
 	}
-	obj, _, err := disp.Lookup(suffix)
+	obj, _, err := disp.Lookup(ctx, suffix)
 	switch {
 	case err != nil:
 		return nil, err
@@ -130,7 +130,7 @@
 	if disp == nil {
 		return signature.Method{}, verror.New(verror.ErrUnknownMethod, ctx, rpc.ReservedMethodSignature)
 	}
-	obj, _, err := disp.Lookup(suffix)
+	obj, _, err := disp.Lookup(ctx, suffix)
 	switch {
 	case err != nil:
 		return signature.Method{}, err
@@ -234,7 +234,7 @@
 			})
 			continue
 		}
-		obj, auth, err := disp.Lookup(suffix)
+		obj, auth, err := disp.Lookup(ctx, suffix)
 		if err != nil {
 			vlog.VI(3).Infof("rpc Glob: Lookup failed for %q: %v", suffix, err)
 			call.Send(naming.GlobReplyError{
diff --git a/runtime/internal/rpc/server.go b/runtime/internal/rpc/server.go
index fdaa655..ccbee62 100644
--- a/runtime/internal/rpc/server.go
+++ b/runtime/internal/rpc/server.go
@@ -743,7 +743,7 @@
 	auth    security.Authorizer
 }
 
-func (d leafDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d leafDispatcher) Lookup(ctx *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	defer apilog.LogCallf(nil, "suffix=%.10s...", suffix)(nil, "") // gologcop: DO NOT EDIT, MUST BE FIRST STATEMENT
 	if suffix != "" {
 		return nil, nil, verror.New(verror.ErrUnknownSuffix, nil, suffix)
@@ -986,7 +986,7 @@
 // authorizeVtrace works by simulating a call to __debug/vtrace.Trace.  That
 // rpc is essentially equivalent in power to the data we are attempting to
 // attach here.
-func (fs *flowServer) authorizeVtrace() error {
+func (fs *flowServer) authorizeVtrace(ctx *context.T) error {
 	// Set up a context as though we were calling __debug/vtrace.
 	params := &security.CallParams{}
 	params.Copy(fs)
@@ -996,7 +996,7 @@
 
 	var auth security.Authorizer
 	if fs.server.dispReserved != nil {
-		_, auth, _ = fs.server.dispReserved.Lookup(params.Suffix)
+		_, auth, _ = fs.server.dispReserved.Lookup(ctx, params.Suffix)
 	}
 	return authorize(fs.ctx, security.NewCall(params), auth)
 }
@@ -1010,7 +1010,7 @@
 
 	var traceResponse vtrace.Response
 	// Check if the caller is permitted to view vtrace data.
-	if fs.authorizeVtrace() == nil {
+	if fs.authorizeVtrace(fs.ctx) == nil {
 		traceResponse = vtrace.GetResponse(fs.ctx)
 	}
 
@@ -1123,7 +1123,7 @@
 
 	// Prepare invoker and decode args.
 	numArgs := int(req.NumPosArgs)
-	argptrs, tags, err := invoker.Prepare(strippedMethod, numArgs)
+	argptrs, tags, err := invoker.Prepare(fs.ctx, strippedMethod, numArgs)
 	fs.tags = tags
 	if err != nil {
 		fs.drainDecoderArgs(numArgs)
@@ -1197,7 +1197,7 @@
 		return nil, nil, verror.New(verror.ErrUnknownSuffix, fs.ctx, suffix, innerErr)
 	}
 	if disp != nil {
-		obj, auth, err := disp.Lookup(suffix)
+		obj, auth, err := disp.Lookup(fs.ctx, suffix)
 		switch {
 		case err != nil:
 			return nil, nil, err
diff --git a/runtime/internal/rpc/server_test.go b/runtime/internal/rpc/server_test.go
index e46aa50..abbb9fc 100644
--- a/runtime/internal/rpc/server_test.go
+++ b/runtime/internal/rpc/server_test.go
@@ -39,7 +39,7 @@
 
 type badObjectDispatcher struct{}
 
-func (badObjectDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (badObjectDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return noMethodsType{}, nil, nil
 }
 
diff --git a/runtime/internal/rpc/test/client_test.go b/runtime/internal/rpc/test/client_test.go
index 7ea8425..70fe50f 100644
--- a/runtime/internal/rpc/test/client_test.go
+++ b/runtime/internal/rpc/test/client_test.go
@@ -70,7 +70,7 @@
 
 type treeDispatcher struct{ id string }
 
-func (d treeDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d treeDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return &echoServerObject{d.id, suffix}, nil, nil
 }
 
diff --git a/runtime/internal/rpc/test/glob_test.go b/runtime/internal/rpc/test/glob_test.go
index 3cb1979..3d00d7b 100644
--- a/runtime/internal/rpc/test/glob_test.go
+++ b/runtime/internal/rpc/test/glob_test.go
@@ -250,7 +250,7 @@
 	tree *node
 }
 
-func (d *disp) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *disp) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	elems := strings.Split(suffix, "/")
 	var auth security.Authorizer
 	for _, e := range elems {
diff --git a/runtime/internal/rpc/test/proxy_test.go b/runtime/internal/rpc/test/proxy_test.go
index 9a6c7b8..6a72bb9 100644
--- a/runtime/internal/rpc/test/proxy_test.go
+++ b/runtime/internal/rpc/test/proxy_test.go
@@ -103,7 +103,7 @@
 
 type testServerDisp struct{ server interface{} }
 
-func (t testServerDisp) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (t testServerDisp) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return t.server, testServerAuthorizer{}, nil
 }
 
diff --git a/runtime/internal/vtrace/vtrace_test.go b/runtime/internal/vtrace/vtrace_test.go
index 2a12083..4bb4525 100644
--- a/runtime/internal/vtrace/vtrace_test.go
+++ b/runtime/internal/vtrace/vtrace_test.go
@@ -333,7 +333,7 @@
 
 type debugDispatcher string
 
-func (permsDisp debugDispatcher) Lookup(string) (interface{}, security.Authorizer, error) {
+func (permsDisp debugDispatcher) Lookup(*context.T, string) (interface{}, security.Authorizer, error) {
 	perms, err := access.ReadPermissions(strings.NewReader(string(permsDisp)))
 	if err != nil {
 		return nil, nil, err
diff --git a/services/application/application/impl_test.go b/services/application/application/impl_test.go
index a165caa..9cb5353 100644
--- a/services/application/application/impl_test.go
+++ b/services/application/application/impl_test.go
@@ -115,7 +115,7 @@
 
 type dispatcher struct{}
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return repository.ApplicationServer(&server{suffix: suffix}), nil, nil
 }
 
diff --git a/services/application/applicationd/dispatcher.go b/services/application/applicationd/dispatcher.go
index 050c874..4761814 100644
--- a/services/application/applicationd/dispatcher.go
+++ b/services/application/applicationd/dispatcher.go
@@ -34,7 +34,7 @@
 	return &dispatcher{store: store, storeRoot: storeDir}, nil
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	name, _, err := parse(nil, suffix)
 	if err != nil {
 		return nil, nil, err
diff --git a/services/binary/binary/impl_test.go b/services/binary/binary/impl_test.go
index 6cf5fd0..1036c8d 100644
--- a/services/binary/binary/impl_test.go
+++ b/services/binary/binary/impl_test.go
@@ -96,7 +96,7 @@
 	return &dispatcher{}
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return repository.BinaryServer(&server{suffix: suffix}), nil, nil
 }
 
diff --git a/services/debug/debuglib/dispatcher.go b/services/debug/debuglib/dispatcher.go
index ce4dc26..81c09b5 100644
--- a/services/debug/debuglib/dispatcher.go
+++ b/services/debug/debuglib/dispatcher.go
@@ -9,6 +9,7 @@
 	"strings"
 	"time"
 
+	"v.io/v23/context"
 	"v.io/v23/rpc"
 	"v.io/v23/security"
 	"v.io/x/ref/services/internal/logreaderlib"
@@ -32,7 +33,7 @@
 // The first part of the names of the objects served by this dispatcher.
 var rootName = "__debug"
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	if suffix == "" {
 		return rpc.ChildrenGlobberInvoker(rootName), d.auth, nil
 	}
diff --git a/services/device/device/devicemanager_mock_test.go b/services/device/device/devicemanager_mock_test.go
index 1ae9ec1..527e951 100644
--- a/services/device/device/devicemanager_mock_test.go
+++ b/services/device/device/devicemanager_mock_test.go
@@ -310,6 +310,6 @@
 	return &dispatcher{tapes: tapes, t: t}
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return &mockDeviceInvoker{tape: d.tapes.forSuffix(suffix), t: d.t}, nil, nil
 }
diff --git a/services/device/device/local_install.go b/services/device/device/local_install.go
index 89510fc..aba34b2 100644
--- a/services/device/device/local_install.go
+++ b/services/device/device/local_install.go
@@ -55,7 +55,7 @@
 
 type mapDispatcher map[string]interface{}
 
-func (d mapDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d mapDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	o, ok := d[suffix]
 	if !ok {
 		return nil, nil, fmt.Errorf("suffix %s not found", suffix)
diff --git a/services/device/deviced/internal/impl/claim.go b/services/device/deviced/internal/impl/claim.go
index 16dd9bf..0959409 100644
--- a/services/device/deviced/internal/impl/claim.go
+++ b/services/device/deviced/internal/impl/claim.go
@@ -97,7 +97,7 @@
 
 // TODO(ashankar): Remove this and use Serve instead of ServeDispatcher to setup
 // the Claiming service. Shouldn't need the "device" suffix.
-func (c *claimable) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (c *claimable) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	if suffix != "" && suffix != "device" {
 		return nil, nil, verror.New(errors.ErrUnclaimedDevice, nil)
 	}
diff --git a/services/device/deviced/internal/impl/dispatcher.go b/services/device/deviced/internal/impl/dispatcher.go
index d1824ea..ddf37f5 100644
--- a/services/device/deviced/internal/impl/dispatcher.go
+++ b/services/device/deviced/internal/impl/dispatcher.go
@@ -181,8 +181,8 @@
 	ctx     *context.T
 }
 
-func (l *loggingInvoker) Prepare(method string, numArgs int) (argptrs []interface{}, tags []*vdl.Value, err error) {
-	argptrs, tags, err = l.invoker.Prepare(method, numArgs)
+func (l *loggingInvoker) Prepare(ctx *context.T, method string, numArgs int) (argptrs []interface{}, tags []*vdl.Value, err error) {
+	argptrs, tags, err = l.invoker.Prepare(ctx, method, numArgs)
 	if err != nil {
 		l.ctx.Errorf("Prepare(%s %d) returned error: %v", method, numArgs, err)
 	}
@@ -218,7 +218,7 @@
 }
 
 // DISPATCHER INTERFACE IMPLEMENTATION
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	invoker, auth, err := d.internalLookup(suffix)
 	if err != nil {
 		return nil, nil, err
@@ -361,8 +361,8 @@
 	realDispatcher rpc.Dispatcher
 }
 
-func (d *testModeDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
-	obj, _, err := d.realDispatcher.Lookup(suffix)
+func (d *testModeDispatcher) Lookup(ctx *context.T, suffix string) (interface{}, security.Authorizer, error) {
+	obj, _, err := d.realDispatcher.Lookup(ctx, suffix)
 	return obj, d, err
 }
 
diff --git a/services/device/deviced/internal/impl/proxy_invoker.go b/services/device/deviced/internal/impl/proxy_invoker.go
index f654c26..5eb1d08 100644
--- a/services/device/deviced/internal/impl/proxy_invoker.go
+++ b/services/device/deviced/internal/impl/proxy_invoker.go
@@ -52,7 +52,7 @@
 
 var _ rpc.Invoker = (*proxyInvoker)(nil)
 
-func (p *proxyInvoker) Prepare(method string, numArgs int) (argptrs []interface{}, tags []*vdl.Value, _ error) {
+func (p *proxyInvoker) Prepare(_ *context.T, method string, numArgs int) (argptrs []interface{}, tags []*vdl.Value, _ error) {
 	// TODO(toddw): Change argptrs to be filled in with *vdl.Value, to avoid
 	// unnecessary type lookups.
 	argptrs = make([]interface{}, numArgs)
diff --git a/services/device/deviced/internal/impl/proxy_invoker_test.go b/services/device/deviced/internal/impl/proxy_invoker_test.go
index e7b2cc2..c39c410 100644
--- a/services/device/deviced/internal/impl/proxy_invoker_test.go
+++ b/services/device/deviced/internal/impl/proxy_invoker_test.go
@@ -74,7 +74,7 @@
 	desc   []rpc.InterfaceDesc
 }
 
-func (d *proxyDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *proxyDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	d.ctx.Infof("LOOKUP(%s): remote .... %s", suffix, d.remote)
 	return newProxyInvoker(naming.Join(d.remote, suffix), access.Debug, d.desc), nil, nil
 }
diff --git a/services/groups/internal/server/manager.go b/services/groups/internal/server/manager.go
index 280aee4..aa8595f 100644
--- a/services/groups/internal/server/manager.go
+++ b/services/groups/internal/server/manager.go
@@ -7,6 +7,7 @@
 import (
 	"strings"
 
+	"v.io/v23/context"
 	"v.io/v23/rpc"
 	"v.io/v23/security"
 	"v.io/v23/security/access"
@@ -25,7 +26,7 @@
 	return &manager{st: st, perms: perms}
 }
 
-func (m *manager) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (m *manager) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	suffix = strings.TrimPrefix(suffix, "/")
 	// TODO(sadovsky): Check that suffix is a valid group name.
 	// TODO(sadovsky): Use a real authorizer. Note, this authorizer will be
diff --git a/services/groups/internal/store/leveldb/store.go b/services/groups/internal/store/leveldb/store.go
index 23d0733..93ae75b 100644
--- a/services/groups/internal/store/leveldb/store.go
+++ b/services/groups/internal/store/leveldb/store.go
@@ -11,6 +11,7 @@
 
 	istore "v.io/syncbase/x/ref/services/syncbase/store"
 	"v.io/syncbase/x/ref/services/syncbase/store/leveldb"
+	"v.io/v23/context"
 	"v.io/v23/vdl"
 	"v.io/v23/verror"
 	"v.io/v23/vom"
@@ -31,6 +32,7 @@
 // Open opens a groups server store located at the given path,
 // creating it if it doesn't exist.
 func Open(path string) (store.Store, error) {
+	var _ context.T
 	db, err := leveldb.Open(path, leveldb.OpenOptions{CreateIfMissing: true, ErrorIfExists: false})
 	if err != nil {
 		return nil, convertError(err)
diff --git a/services/identity/internal/server/identityd.go b/services/identity/internal/server/identityd.go
index 089efce..e85a8a4 100644
--- a/services/identity/internal/server/identityd.go
+++ b/services/identity/internal/server/identityd.go
@@ -255,7 +255,7 @@
 
 type dispatcher map[string]interface{}
 
-func (d dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	if invoker := d[suffix]; invoker != nil {
 		return invoker, security.AllowEveryone(), nil
 	}
diff --git a/services/internal/binarylib/dispatcher.go b/services/internal/binarylib/dispatcher.go
index f6e7dea..4c6d601 100644
--- a/services/internal/binarylib/dispatcher.go
+++ b/services/internal/binarylib/dispatcher.go
@@ -54,7 +54,7 @@
 		permsStore)
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	auth, err := newAuthorizer(d.state.rootDir, suffix, d.permsStore)
 	if err != nil {
 		return nil, nil, err
diff --git a/services/internal/logreaderlib/logfile_test.go b/services/internal/logreaderlib/logfile_test.go
index 1b0a7b9..aeda437 100644
--- a/services/internal/logreaderlib/logfile_test.go
+++ b/services/internal/logreaderlib/logfile_test.go
@@ -10,6 +10,7 @@
 	"path"
 	"testing"
 
+	"v.io/v23/context"
 	"v.io/v23/naming"
 	"v.io/v23/security"
 	"v.io/v23/services/logreader"
@@ -27,7 +28,7 @@
 	root string
 }
 
-func (d *logFileDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *logFileDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return logreaderlib.NewLogFileService(d.root, suffix), nil, nil
 }
 
diff --git a/services/internal/pproflib/proxy_test.go b/services/internal/pproflib/proxy_test.go
index 8a3f976..079993a 100644
--- a/services/internal/pproflib/proxy_test.go
+++ b/services/internal/pproflib/proxy_test.go
@@ -10,12 +10,12 @@
 	"net/http"
 	"testing"
 
+	"v.io/v23/context"
 	"v.io/v23/security"
 	"v.io/x/ref/lib/xrpc"
+	_ "v.io/x/ref/runtime/factories/generic"
 	"v.io/x/ref/services/internal/pproflib"
 	"v.io/x/ref/test"
-
-	_ "v.io/x/ref/runtime/factories/generic"
 )
 
 //go:generate v23 test generate
@@ -24,7 +24,7 @@
 	server interface{}
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return d.server, nil, nil
 }
 
diff --git a/services/internal/statslib/stats_test.go b/services/internal/statslib/stats_test.go
index b158721..eccd497 100644
--- a/services/internal/statslib/stats_test.go
+++ b/services/internal/statslib/stats_test.go
@@ -33,7 +33,7 @@
 type statsDispatcher struct {
 }
 
-func (d *statsDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *statsDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return statslib.NewStatsService(suffix, 100*time.Millisecond), nil, nil
 }
 
diff --git a/services/mounttable/mounttablelib/collectionserver_test.go b/services/mounttable/mounttablelib/collectionserver_test.go
index 07b2e5a..1d725ff 100644
--- a/services/mounttable/mounttablelib/collectionserver_test.go
+++ b/services/mounttable/mounttablelib/collectionserver_test.go
@@ -35,7 +35,7 @@
 }
 
 // Lookup implements rpc.Dispatcher.Lookup.
-func (d *collectionDispatcher) Lookup(name string) (interface{}, security.Authorizer, error) {
+func (d *collectionDispatcher) Lookup(_ *context.T, name string) (interface{}, security.Authorizer, error) {
 	rpcc := &rpcContext{name: name, collectionServer: d.collectionServer}
 	return rpcc, d, nil
 }
diff --git a/services/mounttable/mounttablelib/mounttable.go b/services/mounttable/mounttablelib/mounttable.go
index b97014a..303fa8c 100644
--- a/services/mounttable/mounttablelib/mounttable.go
+++ b/services/mounttable/mounttablelib/mounttable.go
@@ -21,7 +21,6 @@
 	"v.io/v23/security/access"
 	"v.io/v23/services/mounttable"
 	"v.io/v23/verror"
-
 	"v.io/x/ref/lib/glob"
 	"v.io/x/ref/lib/stats"
 )
@@ -178,7 +177,7 @@
 }
 
 // Lookup implements rpc.Dispatcher.Lookup.
-func (mt *mountTable) Lookup(name string) (interface{}, security.Authorizer, error) {
+func (mt *mountTable) Lookup(ctx *context.T, name string) (interface{}, security.Authorizer, error) {
 	mt.ctx.VI(2).Infof("*********************Lookup %s", name)
 	ms := &mountContext{
 		name: name,
diff --git a/services/mounttable/mounttablelib/neighborhood.go b/services/mounttable/mounttablelib/neighborhood.go
index ef5b672..8939dcd 100644
--- a/services/mounttable/mounttablelib/neighborhood.go
+++ b/services/mounttable/mounttablelib/neighborhood.go
@@ -10,9 +10,6 @@
 	"strings"
 	"time"
 
-	"v.io/x/lib/netconfig"
-	"v.io/x/ref/lib/glob"
-
 	"v.io/v23"
 	"v.io/v23/context"
 	"v.io/v23/naming"
@@ -22,6 +19,8 @@
 	"v.io/v23/services/mounttable"
 	vdltime "v.io/v23/vdlroot/time"
 	"v.io/v23/verror"
+	"v.io/x/lib/netconfig"
+	"v.io/x/ref/lib/glob"
 
 	"v.io/x/ref/internal/logger"
 
@@ -157,7 +156,7 @@
 }
 
 // Lookup implements rpc.Dispatcher.Lookup.
-func (nh *neighborhood) Lookup(name string) (interface{}, security.Authorizer, error) {
+func (nh *neighborhood) Lookup(ctx *context.T, name string) (interface{}, security.Authorizer, error) {
 	logger.Global().VI(1).Infof("*********************LookupServer '%s'\n", name)
 	elems := strings.Split(name, "/")[nh.nelems:]
 	if name == "" {
diff --git a/services/profile/profile/impl_test.go b/services/profile/profile/impl_test.go
index 98debf6..3879f0e 100644
--- a/services/profile/profile/impl_test.go
+++ b/services/profile/profile/impl_test.go
@@ -83,7 +83,7 @@
 type dispatcher struct {
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return repository.ProfileServer(&server{suffix: suffix}), nil, nil
 }
 
diff --git a/services/profile/profiled/dispatcher.go b/services/profile/profiled/dispatcher.go
index 16f386f..dff2e59 100644
--- a/services/profile/profiled/dispatcher.go
+++ b/services/profile/profiled/dispatcher.go
@@ -7,9 +7,9 @@
 import (
 	"path/filepath"
 
+	"v.io/v23/context"
 	"v.io/v23/rpc"
 	"v.io/v23/security"
-
 	"v.io/x/ref/services/internal/fs"
 	"v.io/x/ref/services/repository"
 )
@@ -35,6 +35,6 @@
 
 // DISPATCHER INTERFACE IMPLEMENTATION
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return repository.ProfileServer(NewProfileService(d.store, d.storeRoot, suffix)), d.auth, nil
 }
diff --git a/services/proxy/proxyd/main.go b/services/proxy/proxyd/main.go
index 1333581..c7e6950 100644
--- a/services/proxy/proxyd/main.go
+++ b/services/proxy/proxyd/main.go
@@ -108,7 +108,7 @@
 
 type nilDispatcher struct{}
 
-func (nilDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (nilDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return nil, nil, nil
 }
 
diff --git a/services/role/roled/internal/dispatcher.go b/services/role/roled/internal/dispatcher.go
index f741d34..fdeeedd 100644
--- a/services/role/roled/internal/dispatcher.go
+++ b/services/role/roled/internal/dispatcher.go
@@ -43,7 +43,7 @@
 	config *serverConfig
 }
 
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	if len(suffix) == 0 {
 		return discharger.DischargerServer(&dischargerImpl{d.config}), security.AllowEveryone(), nil
 	}
diff --git a/services/role/roled/internal/role_test.go b/services/role/roled/internal/role_test.go
index af42e3b..adb3b17 100644
--- a/services/role/roled/internal/role_test.go
+++ b/services/role/roled/internal/role_test.go
@@ -308,7 +308,7 @@
 type testDispatcher struct {
 }
 
-func (d *testDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *testDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	return d, d, nil
 }
 
diff --git a/services/wspr/internal/app/app.go b/services/wspr/internal/app/app.go
index a504463..7be91aa 100644
--- a/services/wspr/internal/app/app.go
+++ b/services/wspr/internal/app/app.go
@@ -460,7 +460,7 @@
 func (l *localCall) Security() security.Call                         { return l }
 
 func (c *Controller) handleInternalCall(ctx *context.T, invoker rpc.Invoker, msg *RpcRequest, w lib.ClientWriter, span vtrace.Span, decoder *vom.Decoder) {
-	argptrs, tags, err := invoker.Prepare(msg.Method, int(msg.NumInArgs))
+	argptrs, tags, err := invoker.Prepare(ctx, msg.Method, int(msg.NumInArgs))
 	if err != nil {
 		w.Error(verror.Convert(verror.ErrInternal, ctx, err))
 		return
diff --git a/services/wspr/internal/rpc/server/dispatcher.go b/services/wspr/internal/rpc/server/dispatcher.go
index 96573c9..afdd2fa 100644
--- a/services/wspr/internal/rpc/server/dispatcher.go
+++ b/services/wspr/internal/rpc/server/dispatcher.go
@@ -71,7 +71,7 @@
 }
 
 // Lookup implements dispatcher interface Lookup.
-func (d *dispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d *dispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	// If the server has been closed, we immediately return a retryable error.
 	d.mu.Lock()
 	if d.closed {
diff --git a/services/wspr/internal/rpc/server/dispatcher_test.go b/services/wspr/internal/rpc/server/dispatcher_test.go
index 5e60164..472e339 100644
--- a/services/wspr/internal/rpc/server/dispatcher_test.go
+++ b/services/wspr/internal/rpc/server/dispatcher_test.go
@@ -47,7 +47,7 @@
 	hasGlobber bool
 }
 
-func (m mockInvoker) Prepare(string, int) ([]interface{}, []*vdl.Value, error) {
+func (m mockInvoker) Prepare(*context.T, string, int) ([]interface{}, []*vdl.Value, error) {
 	return nil, nil, nil
 }
 
@@ -112,7 +112,7 @@
 		d.handleLookupResponse(ctx, 0, lib.HexVomEncodeOrDie(reply, nil))
 	}()
 
-	invoker, auth, err := d.Lookup("a/b")
+	invoker, auth, err := d.Lookup(ctx, "a/b")
 
 	if err != nil {
 		t.Errorf("Unexpected error: %v", err)
@@ -164,7 +164,7 @@
 		d.handleLookupResponse(ctx, 0, lib.HexVomEncodeOrDie(reply, nil))
 	}()
 
-	invoker, auth, err := d.Lookup("a/b")
+	invoker, auth, err := d.Lookup(ctx, "a/b")
 
 	if err != nil {
 		t.Errorf("Unexpected error: %v", err)
@@ -211,7 +211,7 @@
 		d.handleLookupResponse(ctx, 0, lib.HexVomEncodeOrDie(reply, nil))
 	}()
 
-	_, _, err := d.Lookup("a/b")
+	_, _, err := d.Lookup(ctx, "a/b")
 
 	if err == nil {
 		t.Error("expected error, but got none")
diff --git a/services/wspr/internal/rpc/server/invoker.go b/services/wspr/internal/rpc/server/invoker.go
index c52a630..f10c43c 100644
--- a/services/wspr/internal/rpc/server/invoker.go
+++ b/services/wspr/internal/rpc/server/invoker.go
@@ -44,7 +44,7 @@
 }
 
 // Prepare implements the Invoker interface.
-func (i *invoker) Prepare(methodName string, numArgs int) ([]interface{}, []*vdl.Value, error) {
+func (i *invoker) Prepare(_ *context.T, methodName string, numArgs int) ([]interface{}, []*vdl.Value, error) {
 	method, err := i.MethodSignature(nil, nil, methodName)
 	if err != nil {
 		return nil, nil, err
diff --git a/test/testutil/dispatcher.go b/test/testutil/dispatcher.go
index 671f4d6..83f6e2f 100644
--- a/test/testutil/dispatcher.go
+++ b/test/testutil/dispatcher.go
@@ -5,6 +5,7 @@
 package testutil
 
 import (
+	"v.io/v23/context"
 	"v.io/v23/rpc"
 	"v.io/v23/security"
 	"v.io/v23/verror"
@@ -22,7 +23,7 @@
 	auth    security.Authorizer
 }
 
-func (d leafDispatcher) Lookup(suffix string) (interface{}, security.Authorizer, error) {
+func (d leafDispatcher) Lookup(_ *context.T, suffix string) (interface{}, security.Authorizer, error) {
 	if suffix != "" {
 		return nil, nil, verror.New(verror.ErrUnknownSuffix, nil, suffix)
 	}