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
bitops
4level-fixup.h -rw-r--r-- 1.0 KB
Kbuild -rw-r--r-- 260 bytes
Kbuild.asm -rw-r--r-- 916 bytes
atomic.h -rw-r--r-- 5.1 KB
audit_change_attr.h -rw-r--r-- 320 bytes
audit_dir_write.h -rw-r--r-- 238 bytes
audit_read.h -rw-r--r-- 127 bytes
audit_signal.h -rw-r--r-- 36 bytes
audit_write.h -rw-r--r-- 229 bytes
bitops.h -rw-r--r-- 1011 bytes
bug.h -rw-r--r-- 2.6 KB
cmpxchg-local.h -rw-r--r-- 1.3 KB
cmpxchg.h -rw-r--r-- 537 bytes
cputime.h -rw-r--r-- 1.9 KB
device.h -rw-r--r-- 218 bytes
div64.h -rw-r--r-- 1.3 KB
dma-coherent.h -rw-r--r-- 891 bytes
dma-mapping-broken.h -rw-r--r-- 2.4 KB
dma-mapping.h -rw-r--r-- 7.1 KB
emergency-restart.h -rw-r--r-- 209 bytes
errno-base.h -rw-r--r-- 1.5 KB
errno.h -rw-r--r-- 5.0 KB
fcntl.h -rw-r--r-- 3.3 KB
futex.h -rw-r--r-- 1.2 KB
gpio.h -rw-r--r-- 5.6 KB
ide_iops.h -rw-r--r-- 752 bytes
int-l64.h -rw-r--r-- 1.3 KB
int-ll64.h -rw-r--r-- 1.4 KB
ioctl.h -rw-r--r-- 3.4 KB
iomap.h -rw-r--r-- 2.7 KB
irq_regs.h -rw-r--r-- 980 bytes
kdebug.h -rw-r--r-- 140 bytes
libata-portmap.h -rw-r--r-- 153 bytes
local.h -rw-r--r-- 3.1 KB
memory_model.h -rw-r--r-- 2.2 KB
mm_hooks.h -rw-r--r-- 425 bytes
mman.h -rw-r--r-- 1.6 KB
mutex-dec.h -rw-r--r-- 2.9 KB
mutex-null.h -rw-r--r-- 666 bytes
mutex-xchg.h -rw-r--r-- 3.7 KB
page.h -rw-r--r-- 410 bytes
pci-dma-compat.h -rw-r--r-- 3.3 KB
pci.h -rw-r--r-- 1.2 KB
percpu.h -rw-r--r-- 2.2 KB
pgtable-nopmd.h -rw-r--r-- 1.9 KB
pgtable-nopud.h -rw-r--r-- 1.8 KB
pgtable.h -rw-r--r-- 8.7 KB
poll.h -rw-r--r-- 708 bytes
resource.h -rw-r--r-- 2.8 KB
rtc.h -rw-r--r-- 5.2 KB
sections.h -rw-r--r-- 744 bytes
siginfo.h -rw-r--r-- 8.3 KB
signal.h -rw-r--r-- 787 bytes
statfs.h -rw-r--r-- 1.7 KB
syscall.h -rw-r--r-- 5.5 KB
termios.h -rw-r--r-- 2.1 KB
tlb.h -rw-r--r-- 3.8 KB
topology.h -rw-r--r-- 2.0 KB
uaccess.h -rw-r--r-- 702 bytes
vmlinux.lds.h -rw-r--r-- 12.9 KB
xor.h -rw-r--r-- 13.6 KB

back to top