LINUX: Don't panic on some file open errors
Commit 'LINUX: Return NULL for afs_linux_raw_open error' (
f6af4a155)
updated afs_linux_raw_open to return NULL on some errors, but still
panics if obtaining the dentry fails.
Commit 'afs: Verify osi_UFSOpen worked' (
c6b61a451) updated callers of
osi_UFSOpen to verify whether or not the open was successful. This
meant osi_UFSOpen (and routines it calls) could pass back an error
indication rather than panic when an error is encountered.
Update afs_linux_raw_open to return a failure instead of panic if unable
to obtain a dentry.
Update osi_UFSOpen to return a NULL instead of panic if unable to obtain
memory or fails to open the file. All callers of osi_UFSOpen handle a
fail return, though some will still issue a panic.
Update afs_linux_readpage_fastpath and afs_linux_readpages to not panic
if afs_linux_raw_open fails. Instead of panic, return an error.
For testing, an error can be forced by removing a file from the
cache directory.
Note this work is based on a commit by pruiter@sinenomine.net
Change-Id: Ic47e4868b4f81d99fbe3b2e4958778508ae4851f
Reviewed-on: https://gerrit.openafs.org/14242
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
Tested-by: BuildBot <buildbot@rampaginggeek.com>