[Bug 227285] File descriptor passing does not work reliably on SMP system (cache coherency issue?)

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Apr 4 14:34:52 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227285

--- Comment #2 from Jan Kokemüller <jan.kokemueller at gmail.com> ---
Created attachment 192214
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=192214&action=edit
excerpt of Dtrace script output

Here is part of the Dtrace debug log.

When 'got err' is printed it means that the parent could not read the byte from
the child. At this point the address of the receive sockbuf is
'fffff801071df148' and the SBS_CANTRCVMORE flag is set (CPU 1).

However, further above, this sockbuf looks fine in the child (CPU 3) and there
aren't any calls to socantrcvmore_locked() in the meantime.

Even further above, this sockbuf was destroyed by the parent in a previous
iteration (CPU 1) and therefore SBS_CANTRCVMORE is set. But this should not
affect the current iteration. It looks like the memory from the child process
on CPU 3 isn't made visible to CPU 1 properly.

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


More information about the freebsd-bugs mailing list