OpenAFS suffers kernel panic and deadlock under RHEL 6.5 and RHEL 5.10
Issue
- A design decision in the way OpenAFS interacts with the kernel causes kernel panic under certain AFS access patterns.
- This is described by Andrew Deason from Sine Nomine (OpenAFS support) at OpenAFS client crashes on RHEL 5.10 and RHEL 6.5
- The kernel warning backtrace may be similar to:
WARNING: at fs/dcache.c:1249 d_splice_alias+0x16e/0x180() (Tainted: P --------------- )
Call Trace:
[<ffffffff81071e27>] ? warn_slowpath_common+0x87/0xc0
[<ffffffff81071e7a>] ? warn_slowpath_null+0x1a/0x20
[<ffffffff811a454e>] ? d_splice_alias+0x16e/0x180
[<ffffffffa042d32d>] ? afs_linux_lookup+0x12d/0x280 [openafs]
[<ffffffff81198a45>] ? do_lookup+0x1a5/0x230
[<ffffffff81199364>] ? __link_path_walk+0x794/0xff0
[<ffffffff811218b7>] ? do_read_cache_page+0x97/0x180
[<ffffffff811219e9>] ? read_cache_page_async+0x19/0x20
[<ffffffff81121a06>] ? read_cache_page+0x16/0x20
[<ffffffff8119609f>] ? page_getlink+0x4f/0xb0
[<ffffffff811990c4>] ? __link_path_walk+0x4f4/0xff0
[<ffffffff8122dad1>] ? avc_has_perm+0x71/0x90
[<ffffffff81199e7a>] ? path_walk+0x6a/0xe0
[<ffffffff8119a08b>] ? filename_lookup+0x6b/0xc0
[<ffffffff8119b1b7>] ? user_path_at+0x57/0xa0
[<ffffffffa042d836>] ? afs_linux_getattr+0x36/0x50 [openafs]
[<ffffffff811aaa30>] ? mntput_no_expire+0x30/0x110
[<ffffffff8118e7c4>] ? cp_new_stat+0xe4/0x100
[<ffffffff8118ea00>] ? vfs_fstatat+0x50/0xa0
[<ffffffff8118eb7b>] ? vfs_stat+0x1b/0x20
[<ffffffff8118eba4>] ? sys_newstat+0x24/0x50
[<ffffffff810e2077>] ? audit_syscall_entry+0x1d7/0x200
[<ffffffff810e1e6e>] ? __audit_syscall_exit+0x25e/0x290
[<ffffffff8100b072>] ? system_call_fastpath+0x16/0x1b
with panics in may_delete inside vfs_rmdir some time after the warning. Panics in other code paths may also be seen.
- This has occurred in Red Hat Enterprise Linux since the following patches:
RHEL 5
- Development kernel
2.6.18-367.el5 - Released with
kernel-2.6.18-371.el5in RHEL 5.10
- [fs] vfs: stop d_splice_alias creating directory aliases (J. Bruce Fields) [785916]
RHEL 6
- Development kernel
2.6.32-408.el6 - Released with
kernel-2.6.32-431.el6in RHEL 6.5
- [fs] vfs: stop d_splice_alias creating directory aliases (J. Bruce Fields) [820446]
Environment
- Red Hat Enterprise Linux 6.5 (
kernel-2.6.32-431) - Red Hat Enterprise Linux 5.10 (
kernel-2.6.18-371.el5) - OpenAFS, the open source implementation of the AFS filesystem
Support Note:
OpenAFS is not a component supplied or supported by Red Hat.
Commercial support for OpenAFS is available through organizations such as Sine Nomine Associates and Secure Endpoints Inc.
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
