[issue713] shutdown freeze and forced unmounts

Matthew Dillon dillon at apollo.backplane.com
Tue Jul 10 12:44:40 PDT 2007


    Your php processes aren't exiting:

  0   841 e8cf3200 00040600 php        00000000 waitmsg
  0   994 e8cf0e00 00040600 php        00000000 waitmsg
  0   995 e8cf0d00 00040600 php        00000000 waitmsg
  0   843 e8cf3000 00040600 php        00000000 waitmsg
  1   840 e8cf3300 00040600 php        00000000 waitmsg
  1   842 e8cf3100 00040600 php        00000000 waitmsg

    They are stuck in accept() and the accept() is marked as being
    uninterruptable.

    Oh!  Oh my.  WTF.  It's a bug in the network stack.   The local
    unix domain sockets are using sync_soport() when they really
    should not be.

    It was an optimization that went a little too far.  sync_soport()
    calls the dispatch function in the context of the caller rather
    then using a protocol thread, but it also waits for the message
    to complete and passes a flags value of 0 (i.e. tells it to ignore
    signals) when it shouldn't.

    I'll be able to get this fixed today, definitely.

					-Matt
					Matthew Dillon 
					<dillon at backplane.com>





More information about the Bugs mailing list