Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-8180

RHEL7 __ldiskfs_find_entry can now return ERR_PTR

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • Major
    • None
    • None
    • None
    • 3
    • 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()
      

      Attachments

        Issue Links

          Activity

            People

              wc-triage WC Triage
              green Oleg Drokin
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: