struct dn_fib_table {
-       int n;
+       u32 n;
 
        int (*insert)(struct dn_fib_table *t, struct rtmsg *r, 
                        struct dn_kern_rta *rta, struct nlmsghdr *n, 
 /*
  * dn_tables.c
  */
-extern struct dn_fib_table *dn_fib_get_table(int n, int creat);
+extern struct dn_fib_table *dn_fib_get_table(u32 n, int creat);
 extern struct dn_fib_table *dn_fib_empty_table(void);
 extern void dn_fib_table_init(void);
 extern void dn_fib_table_cleanup(void);
 
 #endif /* CONFIG_IP_ROUTE_MULTIPATH_WRANDOM */
 
 struct fib_table {
-       unsigned char   tb_id;
+       u32             tb_id;
        unsigned        tb_stamp;
        int             (*tb_lookup)(struct fib_table *tb, const struct flowi *flp, struct fib_result *res);
        int             (*tb_insert)(struct fib_table *table, struct rtmsg *r,
 extern struct fib_table *ip_fib_local_table;
 extern struct fib_table *ip_fib_main_table;
 
-static inline struct fib_table *fib_get_table(int id)
+static inline struct fib_table *fib_get_table(u32 id)
 {
        if (id != RT_TABLE_LOCAL)
                return ip_fib_main_table;
        return ip_fib_local_table;
 }
 
-static inline struct fib_table *fib_new_table(int id)
+static inline struct fib_table *fib_new_table(u32 id)
 {
        return fib_get_table(id);
 }
 
 extern struct fib_table * fib_tables[RT_TABLE_MAX+1];
 extern int fib_lookup(struct flowi *flp, struct fib_result *res);
-extern struct fib_table *__fib_new_table(int id);
+extern struct fib_table *__fib_new_table(u32 id);
 
-static inline struct fib_table *fib_get_table(int id)
+static inline struct fib_table *fib_get_table(u32 id)
 {
        if (id == 0)
                id = RT_TABLE_MAIN;
        return fib_tables[id];
 }
 
-static inline struct fib_table *fib_new_table(int id)
+static inline struct fib_table *fib_new_table(u32 id)
 {
        if (id == 0)
                id = RT_TABLE_MAIN;
 extern u32  __fib_res_prefsrc(struct fib_result *res);
 
 /* Exported by fib_hash.c */
-extern struct fib_table *fib_hash_init(int id);
+extern struct fib_table *fib_hash_init(u32 id);
 
 #ifdef CONFIG_IP_MULTIPLE_TABLES
 extern int fib4_rules_dump(struct sk_buff *skb, struct netlink_callback *cb);
 
 
 int dn_fib_dump(struct sk_buff *skb, struct netlink_callback *cb)
 {
-       int t;
-       int s_t;
+       u32 t;
+       u32 s_t;
        struct dn_fib_table *tb;
 
        if (NLMSG_PAYLOAD(cb->nlh, 0) >= sizeof(struct rtmsg) &&
 {
         int flushed = 0;
         struct dn_fib_table *tb;
-        int id;
+        u32 id;
 
         for(id = RT_TABLE_MAX; id > 0; id--) {
                 if ((tb = dn_fib_get_table(id, 0)) == NULL)
 
 }
 
 static int dn_fib_dump_info(struct sk_buff *skb, u32 pid, u32 seq, int event,
-                        u8 tb_id, u8 type, u8 scope, void *dst, int dst_len,
+                        u32 tb_id, u8 type, u8 scope, void *dst, int dst_len,
                         struct dn_fib_info *fi, unsigned int flags)
 {
         struct rtmsg *rtm;
 }
 
 
-static void dn_rtmsg_fib(int event, struct dn_fib_node *f, int z, int tb_id,
+static void dn_rtmsg_fib(int event, struct dn_fib_node *f, int z, u32 tb_id,
                         struct nlmsghdr *nlh, struct netlink_skb_parms *req)
 {
         struct sk_buff *skb;
 }
 
 
-struct dn_fib_table *dn_fib_get_table(int n, int create)
+struct dn_fib_table *dn_fib_get_table(u32 n, int create)
 {
         struct dn_fib_table *t;
 
         return t;
 }
 
-static void dn_fib_del_tree(int n)
+static void dn_fib_del_tree(u32 n)
 {
        struct dn_fib_table *t;
 
 
 struct dn_fib_table *dn_fib_empty_table(void)
 {
-        int id;
+        u32 id;
 
         for(id = RT_TABLE_MIN; id <= RT_TABLE_MAX; id++)
                 if (dn_fib_tables[id] == NULL)
 
 
 struct fib_table *fib_tables[RT_TABLE_MAX+1];
 
-struct fib_table *__fib_new_table(int id)
+struct fib_table *__fib_new_table(u32 id)
 {
        struct fib_table *tb;
 
        int flushed = 0;
 #ifdef CONFIG_IP_MULTIPLE_TABLES
        struct fib_table *tb;
-       int id;
+       u32 id;
 
        for (id = RT_TABLE_MAX; id>0; id--) {
                if ((tb = fib_get_table(id))==NULL)
 
 int inet_dump_fib(struct sk_buff *skb, struct netlink_callback *cb)
 {
-       int t;
-       int s_t;
+       u32 t;
+       u32 s_t;
        struct fib_table *tb;
 
        if (NLMSG_PAYLOAD(cb->nlh, 0) >= sizeof(struct rtmsg) &&
 
 }
 
 #ifdef CONFIG_IP_MULTIPLE_TABLES
-struct fib_table * fib_hash_init(int id)
+struct fib_table * fib_hash_init(u32 id)
 #else
-struct fib_table * __init fib_hash_init(int id)
+struct fib_table * __init fib_hash_init(u32 id)
 #endif
 {
        struct fib_table *tb;
 
 extern int fib_nh_match(struct rtmsg *r, struct nlmsghdr *,
                        struct kern_rta *rta, struct fib_info *fi);
 extern int fib_dump_info(struct sk_buff *skb, u32 pid, u32 seq, int event,
-                        u8 tb_id, u8 type, u8 scope, void *dst,
+                        u32 tb_id, u8 type, u8 scope, void *dst,
                         int dst_len, u8 tos, struct fib_info *fi,
                         unsigned int);
 extern void rtmsg_fib(int event, u32 key, struct fib_alias *fa,
-                     int z, int tb_id,
+                     int z, u32 tb_id,
                      struct nlmsghdr *n, struct netlink_skb_parms *req);
 extern struct fib_alias *fib_find_alias(struct list_head *fah,
                                        u8 tos, u32 prio);
 
 
 static struct fib_table *fib_empty_table(void)
 {
-       int id;
+       u32 id;
 
        for (id = 1; id <= RT_TABLE_MAX; id++)
                if (fib_tables[id] == NULL)
 
 }
 
 void rtmsg_fib(int event, u32 key, struct fib_alias *fa,
-              int z, int tb_id,
+              int z, u32 tb_id,
               struct nlmsghdr *n, struct netlink_skb_parms *req)
 {
        struct sk_buff *skb;
 
 int
 fib_dump_info(struct sk_buff *skb, u32 pid, u32 seq, int event,
-             u8 tb_id, u8 type, u8 scope, void *dst, int dst_len, u8 tos,
+             u32 tb_id, u8 type, u8 scope, void *dst, int dst_len, u8 tos,
              struct fib_info *fi, unsigned int flags)
 {
        struct rtmsg *rtm;
 
 
        key = ntohl(key);
 
-       pr_debug("Insert table=%d %08x/%d\n", tb->tb_id, key, plen);
+       pr_debug("Insert table=%u %08x/%d\n", tb->tb_id, key, plen);
 
        mask = ntohl(inet_make_mask(plen));
 
 /* Fix more generic FIB names for init later */
 
 #ifdef CONFIG_IP_MULTIPLE_TABLES
-struct fib_table * fib_hash_init(int id)
+struct fib_table * fib_hash_init(u32 id)
 #else
-struct fib_table * __init fib_hash_init(int id)
+struct fib_table * __init fib_hash_init(u32 id)
 #endif
 {
        struct fib_table *tb;