Loading fs/nfsd/nfs4idmap.c +6 −5 Original line number Original line Diff line number Diff line Loading @@ -65,6 +65,7 @@ struct ent { u32 id; u32 id; char name[IDMAP_NAMESZ]; char name[IDMAP_NAMESZ]; char authname[IDMAP_NAMESZ]; char authname[IDMAP_NAMESZ]; struct rcu_head rcu_head; }; }; /* Common entry handling */ /* Common entry handling */ Loading @@ -89,7 +90,7 @@ static void ent_put(struct kref *ref) ent_put(struct kref *ref) { { struct ent *map = container_of(ref, struct ent, h.ref); struct ent *map = container_of(ref, struct ent, h.ref); kfree(map); kfree_rcu(map, rcu_head); } } static struct cache_head * static struct cache_head * Loading Loading @@ -264,7 +265,7 @@ idtoname_parse(struct cache_detail *cd, char *buf, int buflen) static struct ent * static struct ent * idtoname_lookup(struct cache_detail *cd, struct ent *item) idtoname_lookup(struct cache_detail *cd, struct ent *item) { { struct cache_head *ch = sunrpc_cache_lookup(cd, &item->h, struct cache_head *ch = sunrpc_cache_lookup_rcu(cd, &item->h, idtoname_hash(item)); idtoname_hash(item)); if (ch) if (ch) return container_of(ch, struct ent, h); return container_of(ch, struct ent, h); Loading Loading @@ -422,7 +423,7 @@ nametoid_parse(struct cache_detail *cd, char *buf, int buflen) static struct ent * static struct ent * nametoid_lookup(struct cache_detail *cd, struct ent *item) nametoid_lookup(struct cache_detail *cd, struct ent *item) { { struct cache_head *ch = sunrpc_cache_lookup(cd, &item->h, struct cache_head *ch = sunrpc_cache_lookup_rcu(cd, &item->h, nametoid_hash(item)); nametoid_hash(item)); if (ch) if (ch) return container_of(ch, struct ent, h); return container_of(ch, struct ent, h); Loading Loading
fs/nfsd/nfs4idmap.c +6 −5 Original line number Original line Diff line number Diff line Loading @@ -65,6 +65,7 @@ struct ent { u32 id; u32 id; char name[IDMAP_NAMESZ]; char name[IDMAP_NAMESZ]; char authname[IDMAP_NAMESZ]; char authname[IDMAP_NAMESZ]; struct rcu_head rcu_head; }; }; /* Common entry handling */ /* Common entry handling */ Loading @@ -89,7 +90,7 @@ static void ent_put(struct kref *ref) ent_put(struct kref *ref) { { struct ent *map = container_of(ref, struct ent, h.ref); struct ent *map = container_of(ref, struct ent, h.ref); kfree(map); kfree_rcu(map, rcu_head); } } static struct cache_head * static struct cache_head * Loading Loading @@ -264,7 +265,7 @@ idtoname_parse(struct cache_detail *cd, char *buf, int buflen) static struct ent * static struct ent * idtoname_lookup(struct cache_detail *cd, struct ent *item) idtoname_lookup(struct cache_detail *cd, struct ent *item) { { struct cache_head *ch = sunrpc_cache_lookup(cd, &item->h, struct cache_head *ch = sunrpc_cache_lookup_rcu(cd, &item->h, idtoname_hash(item)); idtoname_hash(item)); if (ch) if (ch) return container_of(ch, struct ent, h); return container_of(ch, struct ent, h); Loading Loading @@ -422,7 +423,7 @@ nametoid_parse(struct cache_detail *cd, char *buf, int buflen) static struct ent * static struct ent * nametoid_lookup(struct cache_detail *cd, struct ent *item) nametoid_lookup(struct cache_detail *cd, struct ent *item) { { struct cache_head *ch = sunrpc_cache_lookup(cd, &item->h, struct cache_head *ch = sunrpc_cache_lookup_rcu(cd, &item->h, nametoid_hash(item)); nametoid_hash(item)); if (ch) if (ch) return container_of(ch, struct ent, h); return container_of(ch, struct ent, h); Loading