[Bug 272127] fdescfs with linkrdlnk fails openat with O_DIRECTORY unless "ls -l" done in fdescfs dir first...

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 21 Jun 2023 19:33:59 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=272127

--- Comment #5 from Peter Eriksson <pen@lysator.liu.se> ---
(In reply to Konstantin Belousov from comment #4)

A custom kernel with that fix seems to solve the problem!

# umount /compat/linux/dev/fd
# mount /compat/linux/dev/fd
# ./tst -axrd /home/peter86 RUNUR00
open("/home/peter86", O_PATH) -> 3
  facl(3, ACE_GETACLCNT) -> -1 [errno=9 (Bad file descriptor)]
  extattr_list_fd(3, EXTATTR_NAMESPACE_SYSTEM, NULL, 0) -> 0
  extattr_list_fd(3, EXTATTR_NAMESPACE_USER, NULL, 0) -> 0
  extattr_list_fd(3, EXTATTR_NAMESPACE_USER, 0x824992018, 0) -> 0
  openat(3, "RUNUR00", O_RDONLY) -> 4
    facl(4, ACE_GETACLCNT) -> 3
    facl(4, ACE_GETACL) -> 3
    extattr_list_fd(4, EXTATTR_NAMESPACE_SYSTEM, NULL, 0) -> 0
    extattr_list_fd(4, EXTATTR_NAMESPACE_USER, NULL, 0) -> 0
    extattr_list_fd(4, EXTATTR_NAMESPACE_USER, 0x824992018, 0) -> 0
    acl("/compat/linux/dev/fd/4", ACE_GETACLCNT) -> 3
    acl("/compat/linux/dev/fd/4", ACE_GETACL) -> 3
    extattr_list_file("/compat/linux/dev/fd/4", EXTATTR_NAMESPACE_USER, NULL,
0) -> 0
    extattr_list_file("/compat/linux/dev/fd/4", EXTATTR_NAMESPACE_SYSTEM, NULL,
0) -> 0
  openat(3, "RUNUR00", O_PATH) -> 4
    facl(4, ACE_GETACLCNT) -> -1 [errno=9 (Bad file descriptor)]
    extattr_list_fd(4, EXTATTR_NAMESPACE_SYSTEM, NULL, 0) -> 0
    extattr_list_fd(4, EXTATTR_NAMESPACE_USER, NULL, 0) -> 0
    extattr_list_fd(4, EXTATTR_NAMESPACE_USER, 0x824992018, 0) -> 0
    acl("/compat/linux/dev/fd/4", ACE_GETACLCNT) -> 3
    acl("/compat/linux/dev/fd/4", ACE_GETACL) -> 3
    extattr_list_file("/compat/linux/dev/fd/4", EXTATTR_NAMESPACE_USER, NULL,
0) -> 0
    extattr_list_file("/compat/linux/dev/fd/4", EXTATTR_NAMESPACE_SYSTEM, NULL,
0) -> 0
    openat(4, "", O_EMPTY_PATH) -> 5
      facl(5, ACE_GETACLCNT) -> 3
      facl(5, ACE_GETACL) -> 3
      extattr_list_fd(5, EXTATTR_NAMESPACE_SYSTEM, NULL, 0) -> 0
      extattr_list_fd(5, EXTATTR_NAMESPACE_USER, NULL, 0) -> 0
      extattr_list_fd(5, EXTATTR_NAMESPACE_USER, 0x824992018, 0) -> 0
    open("/compat/linux/dev/fd/4", O_RDONLY|O_DIRECTORY) -> 5
      facl(5, ACE_GETACLCNT) -> 3
      facl(5, ACE_GETACL) -> 3
      extattr_list_fd(5, EXTATTR_NAMESPACE_SYSTEM, NULL, 0) -> 0
      extattr_list_fd(5, EXTATTR_NAMESPACE_USER, NULL, 0) -> 0
      extattr_list_fd(5, EXTATTR_NAMESPACE_USER, 0x824992018, 0) -> 0

-- 
You are receiving this mail because:
You are the assignee for the bug.