[LU-8180] RHEL7 __ldiskfs_find_entry can now return ERR_PTR Created: 22/May/16  Updated: 23/May/16  Resolved: 23/May/16

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Oleg Drokin Assignee: WC Triage
Resolution: Duplicate Votes: 0
Labels: None

Issue Links:
Duplicate
is duplicated by LU-7939 ldiskfs_find_entry() returns ERR_PTR(... Resolved
Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

Now that rhel7 is the first class citizen, I switched my testing to it and immediatelly uncovered that __ldiskfs_find_entry from rhel7.2 kernel can return ERR_PTR.

All our code assumes there's only NULL returned in case of an error so this needs fixing.
Here's list of places:

lustre/osd-ldiskfs/osd_handler.c:4044 osd_index_ea_delete() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:4285 __osd_ea_add_rec() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:4639 osd_ea_lookup_rec() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:4647 osd_ea_lookup_rec() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:5706 osd_dirent_check_repair() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:5742 osd_dirent_check_repair() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:5784 osd_dirent_check_repair() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_handler.c:5831 osd_dirent_check_repair() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:301 osd_delete_from_remote_parent() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:337 osd_lookup_in_remote_parent() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:655 osd_obj_update_entry() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:689 osd_obj_del_entry() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:960 osd_obj_map_lookup() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:1157 osd_obj_map_recover() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_compat.c:1179 osd_obj_map_recover() error: 'bh' dereferencing possible ERR_PTR()
lustre/osd-ldiskfs/osd_oi.c:122 osd_oi_index_create_one() error: 'bh' dereferencing possible ERR_PTR()

Generated at Sat Feb 10 02:15:20 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.