Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 6 Dec 2021 10:13:59 +0300
From:      Gleb Popov <arrowd@freebsd.org>
To:        freebsd-hackers <freebsd-hackers@freebsd.org>
Subject:   nmount(2) returns undocumented EDEADLK
Message-ID:  <CALH631mzdOFtOqwnBgQgGfOiX-CNfME%2Boa=-XT_JK0ws8A1t3Q@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
--000000000000b355c005d2750105
Content-Type: text/plain; charset="UTF-8"

Hey hackers.

I have a little program that calls the nmount(2) function in the following
way:

- First it mounts nullfs with fstype="nullfs", from="/src" and
fspath="/dst". This works fine.
- Next it tries to remount it as readonly by adding MNT_UPDATE and
MNT_RDONLY to the nmount(2) call. This call fails with errno=11 (EDEADLK)
for some reason.

The relevant part of kdump:

 19909 coolmount CALL  nmount(0x801610380,0x6,0<><invalid>0)
 19909 coolmount NAMI
 "/var/db/collaboraonline/child-roots/hQN4KQVIpWNA7Pic"
 19909 coolmount NAMI
 "/var/db/collaboraonline/child-roots/hQN4KQVIpWNA7Pic"
 19909 coolmount NAMI  "/var/db/collaboraonline/systemplate"
 19909 coolmount RET   nmount -1 errno 11 Resource deadlock avoided

Does anyone have an idea what's wrong with this? I can try coming up with
minimal repro if needed.

Thanks in advance.

--000000000000b355c005d2750105--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CALH631mzdOFtOqwnBgQgGfOiX-CNfME%2Boa=-XT_JK0ws8A1t3Q>