diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 56e3b463693b19affb7e65c28f4fbf4aa44c1d01..4451fa3e2f33b71c31ab84b03c6f2f796b5427eb 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,16 @@
+2004-11-06  Tom Tromey  <tromey@redhat.com>
+
+	* gnu/java/rmi/server/UnicastConnectionManager.java (clients): Now
+	package-private.
+	(connections): Likewise.
+	(scavenger): Likewise.
+	* gnu/java/rmi/server/ConnectionRunnerPool.java (freelist): Now
+	package-private.
+	* gnu/java/rmi/server/UnicastRemoteCall.java (vec): Now
+	package-private.
+	(ptr): Likewise.
+	* gnu/classpath/ServiceFactory.java (log): Now package-private.
+
 2004-11-06  Tom Tromey  <tromey@redhat.com>
 
 	* javax/naming/directory/BasicAttributes.java (attributes): Now
diff --git a/libjava/gnu/classpath/ServiceFactory.java b/libjava/gnu/classpath/ServiceFactory.java
index 5d1493414d0a37ee04711e98ec401e7206dbce90..e2faef9e39ea49aea0218f6e2163e080cc5eea9a 100644
--- a/libjava/gnu/classpath/ServiceFactory.java
+++ b/libjava/gnu/classpath/ServiceFactory.java
@@ -521,6 +521,7 @@ public final class ServiceFactory
   }
 
 
+  // Package-private to avoid a trampoline.
   /**
    * Passes a log message to the <code>java.util.logging</code>
    * framework. This call returns very quickly if no log message will
@@ -542,7 +543,7 @@ public final class ServiceFactory
    * <code>null</code> if the log message is not associated with a
    * Throwable.
    */
-  private static void log(Level level, String msg, Object param, Throwable t)
+  static void log(Level level, String msg, Object param, Throwable t)
   {
     LogRecord rec;
 
diff --git a/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java b/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java
index af7dc0501aef841a5839a3788706c351f9029b2c..5f5da8ca941b2be7226d4cd96c21c8c88ea4cd47 100644
--- a/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java
+++ b/libjava/gnu/java/rmi/server/ConnectionRunnerPool.java
@@ -1,5 +1,5 @@
 /* gnu.java.rmi.server.ConnectionRunnerPool
-   Copyright (C) 2002 Free Software Foundation, Inc.
+   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -95,7 +95,8 @@ class ConnectionRunnerPool
   private static int size = 5;
   private static int max_size = 10;
   
-  private static ArrayList freelist;
+  // Package-private to avoid a trampoline.
+  static ArrayList freelist;
   
   private static ThreadGroup group = new ThreadGroup("pool");
   
diff --git a/libjava/gnu/java/rmi/server/UnicastConnectionManager.java b/libjava/gnu/java/rmi/server/UnicastConnectionManager.java
index 2c1f5fc3a024ec840e594c05eaa9e210094c381c..cf08a08ab5b6dd2d160422e816a760cafc3ed369 100644
--- a/libjava/gnu/java/rmi/server/UnicastConnectionManager.java
+++ b/libjava/gnu/java/rmi/server/UnicastConnectionManager.java
@@ -65,8 +65,9 @@ public class UnicastConnectionManager
 private static String localhost;
 // use different maps for server/client type UnicastConnectionManager
 private static Hashtable servers = new Hashtable();
-private static Hashtable clients = new Hashtable();
-private ArrayList connections; //client connection pool
+// Package-private to avoid trampolines.
+static Hashtable clients = new Hashtable();
+ArrayList connections; //client connection pool
 
 // make serverThread volatile for poll
 private volatile Thread serverThread;
@@ -74,7 +75,8 @@ private ServerSocket ssock;
 String serverName;
 int serverPort;
 
-static private Thread scavenger;
+// Package-private to avoid a trampoline.
+static Thread scavenger;
 
 // If client and server are in the same VM, serverobj represents server
 Object serverobj;
diff --git a/libjava/gnu/java/rmi/server/UnicastRemoteCall.java b/libjava/gnu/java/rmi/server/UnicastRemoteCall.java
index 78442952ee446b030fd10c8b7e974b8db9e6cf3c..abbe0272544894b883f2f12e6df25569290ea5b0 100644
--- a/libjava/gnu/java/rmi/server/UnicastRemoteCall.java
+++ b/libjava/gnu/java/rmi/server/UnicastRemoteCall.java
@@ -61,8 +61,9 @@ public class UnicastRemoteCall
   private Object object;
   private int opnum;
   private long hash;
-  private Vector vec;
-  private int ptr;
+  // These are package-private due to inner class access.
+  Vector vec;
+  int ptr;
   private ObjID objid;
 
   private ObjectOutput oout;