diff --git a/weed/server/filer_grpc_server.go b/weed/server/filer_grpc_server.go
index 6f7cf1ad6..c9cb6dbe7 100644
--- a/weed/server/filer_grpc_server.go
+++ b/weed/server/filer_grpc_server.go
@@ -238,7 +238,7 @@ func (fs *FilerServer) AssignVolume(ctx context.Context, req *filer_pb.AssignVol
 
 func (fs *FilerServer) DeleteCollection(ctx context.Context, req *filer_pb.DeleteCollectionRequest) (resp *filer_pb.DeleteCollectionResponse, err error) {
 
-	err = fs.filer.MasterClient.WithClient(ctx, func(ctx context.Context, client master_pb.SeaweedClient) error {
+	err = fs.filer.MasterClient.WithClient(ctx, func(client master_pb.SeaweedClient) error {
 		_, err := client.CollectionDelete(ctx, &master_pb.CollectionDeleteRequest{
 			Name: req.GetCollection(),
 		})
diff --git a/weed/shell/command_collection_list.go b/weed/shell/command_collection_list.go
index 0797e56fb..0db74ef20 100644
--- a/weed/shell/command_collection_list.go
+++ b/weed/shell/command_collection_list.go
@@ -25,8 +25,8 @@ func (c *commandCollectionList) Help() string {
 func (c *commandCollectionList) Do(args []string, commandEnv *commandEnv, writer io.Writer) (err error) {
 
 	var resp *master_pb.CollectionListResponse
-
-	err = commandEnv.masterClient.WithClient(context.Background(), func(ctx context.Context, client master_pb.SeaweedClient) error {
+	ctx := context.Background()
+	err = commandEnv.masterClient.WithClient(ctx, func(client master_pb.SeaweedClient) error {
 		resp, err = client.CollectionList(ctx, &master_pb.CollectionListRequest{})
 		return err
 	})
diff --git a/weed/shell/command_volume_list.go b/weed/shell/command_volume_list.go
index 52ac4865a..5be5be569 100644
--- a/weed/shell/command_volume_list.go
+++ b/weed/shell/command_volume_list.go
@@ -25,7 +25,8 @@ func (c *commandVolumeList) Help() string {
 func (c *commandVolumeList) Do(args []string, commandEnv *commandEnv, writer io.Writer) (err error) {
 
 	var resp *master_pb.VolumeListResponse
-	err = commandEnv.masterClient.WithClient(context.Background(), func(ctx context.Context, client master_pb.SeaweedClient) error {
+	ctx := context.Background()
+	err = commandEnv.masterClient.WithClient(ctx, func(client master_pb.SeaweedClient) error {
 		resp, err = client.VolumeList(ctx, &master_pb.VolumeListRequest{})
 		return err
 	})
diff --git a/weed/wdclient/masterclient.go b/weed/wdclient/masterclient.go
index 29fe50d80..794471f7b 100644
--- a/weed/wdclient/masterclient.go
+++ b/weed/wdclient/masterclient.go
@@ -117,8 +117,8 @@ func withMasterClient(ctx context.Context, master string, grpcDialOption grpc.Di
 	return fn(ctx, client)
 }
 
-func (mc *MasterClient) WithClient(ctx context.Context, fn func(ctx context.Context, client master_pb.SeaweedClient) error) error {
+func (mc *MasterClient) WithClient(ctx context.Context, fn func(client master_pb.SeaweedClient) error) error {
 	return withMasterClient(ctx, mc.currentMaster, mc.grpcDialOption, func(ctx context.Context, client master_pb.SeaweedClient) error {
-		return fn(ctx, client)
+		return fn(client)
 	})
 }