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
Kbuild -rw-r--r-- 62 bytes
a.out-core.h -rw-r--r-- 2.0 KB
a.out.h -rw-r--r-- 709 bytes
adb_iop.h -rw-r--r-- 1.1 KB
amigahw.h -rw-r--r-- 11.0 KB
amigaints.h -rw-r--r-- 3.5 KB
amigayle.h -rw-r--r-- 3.1 KB
amipcmcia.h -rw-r--r-- 2.5 KB
apollodma.h -rw-r--r-- 9.2 KB
apollohw.h -rw-r--r-- 2.8 KB
atafd.h -rw-r--r-- 261 bytes
atafdreg.h -rw-r--r-- 2.6 KB
atari_joystick.h -rw-r--r-- 418 bytes
atari_stdma.h -rw-r--r-- 458 bytes
atari_stram.h -rw-r--r-- 429 bytes
atarihw.h -rw-r--r-- 20.1 KB
atariints.h -rw-r--r-- 5.4 KB
atarikb.h -rw-r--r-- 1.5 KB
atomic.h -rw-r--r-- 4.0 KB
auxvec.h -rw-r--r-- 62 bytes
bitops.h -rw-r--r-- 10.7 KB
blinken.h -rw-r--r-- 617 bytes
bootinfo.h -rw-r--r-- 11.6 KB
bug.h -rw-r--r-- 478 bytes
bugs.h -rw-r--r-- 266 bytes
bvme6000hw.h -rw-r--r-- 3.4 KB
byteorder.h -rw-r--r-- 550 bytes
cache.h -rw-r--r-- 215 bytes
cachectl.h -rw-r--r-- 496 bytes
cacheflush.h -rw-r--r-- 4.1 KB
checksum.h -rw-r--r-- 3.3 KB
contregs.h -rw-r--r-- 3.3 KB
cputime.h -rw-r--r-- 115 bytes
current.h -rw-r--r-- 135 bytes
delay.h -rw-r--r-- 1.3 KB
device.h -rw-r--r-- 129 bytes
div64.h -rw-r--r-- 647 bytes
dma-mapping.h -rw-r--r-- 3.0 KB
dma.h -rw-r--r-- 455 bytes
dsp56k.h -rw-r--r-- 1.2 KB
dvma.h -rw-r--r-- 9.6 KB
elf.h -rw-r--r-- 3.1 KB
emergency-restart.h -rw-r--r-- 149 bytes
entry.h -rw-r--r-- 2.7 KB
errno.h -rw-r--r-- 104 bytes
fb.h -rw-r--r-- 792 bytes
fbio.h -rw-r--r-- 9.8 KB
fcntl.h -rw-r--r-- 313 bytes
floppy.h -rw-r--r-- 5.1 KB
fpu.h -rw-r--r-- 417 bytes
futex.h -rw-r--r-- 82 bytes
hardirq.h -rw-r--r-- 363 bytes
hp300hw.h -rw-r--r-- 982 bytes
hw_irq.h -rw-r--r-- 86 bytes
hwtest.h -rw-r--r-- 428 bytes
ide.h -rw-r--r-- 3.0 KB
idprom.h -rw-r--r-- 686 bytes
intersil.h -rw-r--r-- 1.1 KB
io.h -rw-r--r-- 9.9 KB
ioctl.h -rw-r--r-- 31 bytes
ioctls.h -rw-r--r-- 2.6 KB
ipcbuf.h -rw-r--r-- 631 bytes
irq.h -rw-r--r-- 3.5 KB
irq_regs.h -rw-r--r-- 34 bytes
kdebug.h -rw-r--r-- 32 bytes
kmap_types.h -rw-r--r-- 317 bytes
linkage.h -rw-r--r-- 113 bytes
local.h -rw-r--r-- 116 bytes
mac_asc.h -rw-r--r-- 481 bytes
mac_baboon.h -rw-r--r-- 812 bytes
mac_iop.h -rw-r--r-- 5.3 KB
mac_mouse.h -rw-r--r-- 433 bytes
mac_oss.h -rw-r--r-- 2.5 KB
mac_psc.h -rw-r--r-- 7.1 KB
mac_via.h -rw-r--r-- 11.0 KB
machdep.h -rw-r--r-- 1.2 KB
machines.h -rw-r--r-- 3.1 KB
machw.h -rw-r--r-- 1.4 KB
macintosh.h -rw-r--r-- 3.3 KB
macints.h -rw-r--r-- 4.0 KB
math-emu.h -rw-r--r-- 6.6 KB
mc146818rtc.h -rw-r--r-- 526 bytes
md.h -rw-r--r-- 204 bytes
mman.h -rw-r--r-- 616 bytes
mmu.h -rw-r--r-- 115 bytes
mmu_context.h -rw-r--r-- 3.3 KB
mmzone.h -rw-r--r-- 225 bytes
module.h -rw-r--r-- 814 bytes
motorola_pgalloc.h -rw-r--r-- 2.2 KB
motorola_pgtable.h -rw-r--r-- 9.6 KB
movs.h -rw-r--r-- 1.4 KB
msgbuf.h -rw-r--r-- 974 bytes
mutex.h -rw-r--r-- 308 bytes
mvme147hw.h -rw-r--r-- 2.8 KB
mvme16xhw.h -rw-r--r-- 2.5 KB
nubus.h -rw-r--r-- 1.2 KB
openprom.h -rw-r--r-- 7.9 KB
oplib.h -rw-r--r-- 9.5 KB
page.h -rw-r--r-- 5.3 KB
page_offset.h -rw-r--r-- 143 bytes
param.h -rw-r--r-- 443 bytes
parport.h -rw-r--r-- 793 bytes
pci.h -rw-r--r-- 319 bytes
percpu.h -rw-r--r-- 123 bytes
pgalloc.h -rw-r--r-- 316 bytes
pgtable.h -rw-r--r-- 4.3 KB
poll.h -rw-r--r-- 134 bytes
posix_types.h -rw-r--r-- 1.7 KB
processor.h -rw-r--r-- 3.1 KB
ptrace.h -rw-r--r-- 1.7 KB
q40_master.h -rw-r--r-- 2.2 KB
q40ints.h -rw-r--r-- 808 bytes
raw_io.h -rw-r--r-- 7.9 KB
resource.h -rw-r--r-- 116 bytes
rtc.h -rw-r--r-- 1.8 KB
sbus.h -rw-r--r-- 1.0 KB
scatterlist.h -rw-r--r-- 507 bytes
sections.h -rw-r--r-- 128 bytes
segment.h -rw-r--r-- 1.1 KB
sembuf.h -rw-r--r-- 696 bytes
serial.h -rw-r--r-- 1.1 KB
setup.h -rw-r--r-- 11.0 KB
shm.h -rw-r--r-- 1.0 KB
shmbuf.h -rw-r--r-- 1.1 KB
shmparam.h -rw-r--r-- 146 bytes
sigcontext.h -rw-r--r-- 488 bytes
siginfo.h -rw-r--r-- 2.0 KB
signal.h -rw-r--r-- 4.3 KB
socket.h -rw-r--r-- 1.2 KB
sockios.h -rw-r--r-- 370 bytes
spinlock.h -rw-r--r-- 94 bytes
stat.h -rw-r--r-- 1.6 KB
statfs.h -rw-r--r-- 108 bytes
string.h -rw-r--r-- 2.7 KB
sun3-head.h -rw-r--r-- 314 bytes
sun3_pgalloc.h -rw-r--r-- 2.3 KB
sun3_pgtable.h -rw-r--r-- 8.1 KB
sun3ints.h -rw-r--r-- 989 bytes
sun3mmu.h -rw-r--r-- 4.9 KB
sun3x.h -rw-r--r-- 829 bytes
sun3xflop.h -rw-r--r-- 5.6 KB
sun3xprom.h -rw-r--r-- 1.3 KB
suspend.h -rw-r--r-- 101 bytes
system.h -rw-r--r-- 5.6 KB
termbits.h -rw-r--r-- 4.5 KB
termios.h -rw-r--r-- 2.8 KB
thread_info.h -rw-r--r-- 1.6 KB
timex.h -rw-r--r-- 286 bytes
tlb.h -rw-r--r-- 447 bytes
tlbflush.h -rw-r--r-- 4.9 KB
topology.h -rw-r--r-- 128 bytes
traps.h -rw-r--r-- 8.3 KB
types.h -rw-r--r-- 805 bytes
uaccess.h -rw-r--r-- 9.8 KB
ucontext.h -rw-r--r-- 531 bytes
unaligned.h -rw-r--r-- 309 bytes
unistd.h -rw-r--r-- 10.1 KB
user.h -rw-r--r-- 3.7 KB
virtconvert.h -rw-r--r-- 1019 bytes
xor.h -rw-r--r-- 29 bytes
zorro.h -rw-r--r-- 1.1 KB

back to top