[Bug 2019852] Re: nbd-server hangs after fork

Wouter Verhelst 2019852 at bugs.launchpad.net
Tue May 23 16:04:27 UTC 2023


** Description changed:

  [Impact]
  Glib 2.76.0 reworked the implementation of GThreadPool, which nbd uses, in ways that it now no longer works if the treadpool is initialized before a fork() call, but used afterwards (which nbd used to do). A result of this bug in nbd is that, when run against glib 2.76.0 or above, it will accept() a connection from a client but then just sit there and never reply to any message from the client.
  
  [Test plan]
  The build contains a test which calls nbd-tester-client against the newly-built nbd-server. If the bug is still present, the test suite will fail. If the bug is not present, the test suite will complete successfully.
+ 
+ [What could go wrong]
+ The changes could affect the way things are sent to the client, but the build-time test suite should catch incompatible differences.
  
  [Original bug description]
  After updating to lunar, my nbd-server stopped working (it accepts connections, but the forked nbd-server just hangs and no traffic goes in or out)
  
  I tried building latest nbd (3.25) myself and the problem seems to be
  solved.
  
  Its changelog says
  - nbd-server now works as expected when compiled against glib >= 2.76.
  
  So I suppose an updated version is needed.
  
  Thanks!

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/2019852

Title:
  nbd-server hangs after fork

Status in nbd package in Ubuntu:
  Fix Released
Status in nbd source package in Lunar:
  Triaged
Status in nbd source package in Mantic:
  Fix Released

Bug description:
  [Impact]
  Glib 2.76.0 reworked the implementation of GThreadPool, which nbd uses, in ways that it now no longer works if the treadpool is initialized before a fork() call, but used afterwards (which nbd used to do). A result of this bug in nbd is that, when run against glib 2.76.0 or above, it will accept() a connection from a client but then just sit there and never reply to any message from the client.

  [Test plan]
  The build contains a test which calls nbd-tester-client against the newly-built nbd-server. If the bug is still present, the test suite will fail. If the bug is not present, the test suite will complete successfully.

  [What could go wrong]
  The changes could affect the way things are sent to the client, but the build-time test suite should catch incompatible differences.

  [Original bug description]
  After updating to lunar, my nbd-server stopped working (it accepts connections, but the forked nbd-server just hangs and no traffic goes in or out)

  I tried building latest nbd (3.25) myself and the problem seems to be
  solved.

  Its changelog says
  - nbd-server now works as expected when compiled against glib >= 2.76.

  So I suppose an updated version is needed.

  Thanks!

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/nbd/+bug/2019852/+subscriptions




More information about the Ubuntu-sponsors mailing list