https://github.com/torvalds/linux
Revision a4f4d6df537368297a84e6b9444f403f99bf59f6 authored by J. Bruce Fields on 08 December 2008, 23:24:18 UTC, committed by Linus Torvalds on 09 December 2008, 03:49:32 UTC
While 440037287c5 "[PATCH] switch all filesystems over to
d_obtain_alias" removed some cases where fh_to_dentry() and
fh_to_parent() could return NULL, there are still a few NULL returns
left in individual filesystems.  Thus it was a mistake for that commit
to remove the handling of NULL returns in the callers.

Revert those parts of 440037287c5 which removed the NULL handling.

(We could, alternatively, modify all implementations to return -ESTALE
instead of NULL, but that proves to require fixing a number of
filesystems, and in some cases it's arguably more natural to return
NULL.)

Thanks to David for original patch and Linus, Christoph, and Hugh for
review.

Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Cc: David Howells <dhowells@redhat.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 218d11a
History
Tip revision: a4f4d6df537368297a84e6b9444f403f99bf59f6 authored by J. Bruce Fields on 08 December 2008, 23:24:18 UTC
EXPORTFS: handle NULL returns from fh_to_dentry()/fh_to_parent()
Tip revision: a4f4d6d
File Mode Size
9p
bluetooth
irda
iucv
netfilter
netns
phonet
sctp
tc_act
tipc
act_api.h -rw-r--r-- 4.1 KB
addrconf.h -rw-r--r-- 7.1 KB
af_rxrpc.h -rw-r--r-- 2.0 KB
af_unix.h -rw-r--r-- 1.8 KB
ah.h -rw-r--r-- 894 bytes
arp.h -rw-r--r-- 1.0 KB
atmclip.h -rw-r--r-- 1.6 KB
ax25.h -rw-r--r-- 15.0 KB
ax88796.h -rw-r--r-- 845 bytes
cfg80211.h -rw-r--r-- 14.1 KB
checksum.h -rw-r--r-- 3.1 KB
cipso_ipv4.h -rw-r--r-- 6.9 KB
compat.h -rw-r--r-- 1.7 KB
datalink.h -rw-r--r-- 482 bytes
dn.h -rw-r--r-- 7.0 KB
dn_dev.h -rw-r--r-- 5.4 KB
dn_fib.h -rw-r--r-- 4.8 KB
dn_neigh.h -rw-r--r-- 824 bytes
dn_nsp.h -rw-r--r-- 6.1 KB
dn_route.h -rw-r--r-- 4.1 KB
dsa.h -rw-r--r-- 967 bytes
dsfield.h -rw-r--r-- 1.1 KB
dst.h -rw-r--r-- 6.5 KB
esp.h -rw-r--r-- 434 bytes
fib_rules.h -rw-r--r-- 2.8 KB
flow.h -rw-r--r-- 1.9 KB
garp.h -rw-r--r-- 2.6 KB
gen_stats.h -rw-r--r-- 1.5 KB
genetlink.h -rw-r--r-- 6.7 KB
icmp.h -rw-r--r-- 1.8 KB
ieee80211.h -rw-r--r-- 37.5 KB
ieee80211_crypt.h -rw-r--r-- 3.6 KB
ieee80211_radiotap.h -rw-r--r-- 9.7 KB
if_inet6.h -rw-r--r-- 6.4 KB
inet6_connection_sock.h -rw-r--r-- 1.2 KB
inet6_hashtables.h -rw-r--r-- 3.5 KB
inet_common.h -rw-r--r-- 1.5 KB
inet_connection_sock.h -rw-r--r-- 10.4 KB
inet_ecn.h -rw-r--r-- 2.8 KB
inet_frag.h -rw-r--r-- 1.9 KB
inet_hashtables.h -rw-r--r-- 13.3 KB
inet_sock.h -rw-r--r-- 5.4 KB
inet_timewait_sock.h -rw-r--r-- 6.6 KB
inetpeer.h -rw-r--r-- 1.3 KB
ip.h -rw-r--r-- 11.6 KB
ip6_checksum.h -rw-r--r-- 2.3 KB
ip6_fib.h -rw-r--r-- 4.8 KB
ip6_route.h -rw-r--r-- 3.8 KB
ip6_tunnel.h -rw-r--r-- 947 bytes
ip_fib.h -rw-r--r-- 6.9 KB
ip_vs.h -rw-r--r-- 27.7 KB
ipcomp.h -rw-r--r-- 610 bytes
ipconfig.h -rw-r--r-- 772 bytes
ipip.h -rw-r--r-- 1.3 KB
ipv6.h -rw-r--r-- 16.5 KB
ipx.h -rw-r--r-- 3.8 KB
iw_handler.h -rw-r--r-- 21.5 KB
lapb.h -rw-r--r-- 4.7 KB
llc.h -rw-r--r-- 3.6 KB
llc_c_ac.h -rw-r--r-- 10.1 KB
llc_c_ev.h -rw-r--r-- 11.6 KB
llc_c_st.h -rw-r--r-- 1.7 KB
llc_conn.h -rw-r--r-- 4.1 KB
llc_if.h -rw-r--r-- 3.0 KB
llc_pdu.h -rw-r--r-- 14.4 KB
llc_s_ac.h -rw-r--r-- 1.6 KB
llc_s_ev.h -rw-r--r-- 2.3 KB
llc_s_st.h -rw-r--r-- 941 bytes
llc_sap.h -rw-r--r-- 1.2 KB
mac80211.h -rw-r--r-- 66.7 KB
mip6.h -rw-r--r-- 1.7 KB
ndisc.h -rw-r--r-- 3.3 KB
neighbour.h -rw-r--r-- 9.8 KB
net_namespace.h -rw-r--r-- 5.2 KB
netdma.h -rw-r--r-- 1.4 KB
netevent.h -rw-r--r-- 781 bytes
netlabel.h -rw-r--r-- 14.9 KB
netlink.h -rw-r--r-- 30.3 KB
netrom.h -rw-r--r-- 7.9 KB
nexthop.h -rw-r--r-- 821 bytes
p8022.h -rw-r--r-- 441 bytes
pkt_cls.h -rw-r--r-- 9.1 KB
pkt_sched.h -rw-r--r-- 3.0 KB
protocol.h -rw-r--r-- 3.6 KB
psnap.h -rw-r--r-- 296 bytes
raw.h -rw-r--r-- 1.6 KB
rawv6.h -rw-r--r-- 587 bytes
red.h -rw-r--r-- 7.5 KB
request_sock.h -rw-r--r-- 6.4 KB
rose.h -rw-r--r-- 7.7 KB
route.h -rw-r--r-- 5.8 KB
rtnetlink.h -rw-r--r-- 3.0 KB
sch_generic.h -rw-r--r-- 13.0 KB
scm.h -rw-r--r-- 2.8 KB
slhc_vj.h -rw-r--r-- 6.6 KB
snmp.h -rw-r--r-- 4.2 KB
sock.h -rw-r--r-- 38.4 KB
stp.h -rw-r--r-- 358 bytes
syncppp.h -rw-r--r-- 3.3 KB
tcp.h -rw-r--r-- 40.1 KB
tcp_states.h -rw-r--r-- 1.2 KB
timewait_sock.h -rw-r--r-- 1.2 KB
transp_v6.h -rw-r--r-- 1.3 KB
udp.h -rw-r--r-- 6.1 KB
udplite.h -rw-r--r-- 3.4 KB
wext.h -rw-r--r-- 871 bytes
wireless.h -rw-r--r-- 12.3 KB
x25.h -rw-r--r-- 9.3 KB
x25device.h -rw-r--r-- 322 bytes
xfrm.h -rw-r--r-- 42.2 KB

back to top