[CRIU] [PATCH 17/18] sk-unix: Add ability to restore sockets with deleted vfs addresses
Cyrill Gorcunov
gorcunov at gmail.com
Mon Apr 10 03:08:58 PDT 2017
On Mon, Apr 10, 2017 at 12:32:40PM +0300, Kirill Tkhai wrote:
> On 10.04.2017 12:22, Cyrill Gorcunov wrote:
> > On Mon, Apr 10, 2017 at 12:16:22PM +0300, Kirill Tkhai wrote:
> >>>
> >>> ui = container_of(d, struct unix_sk_info, d);
> >>> + gm = ui->ghost_master;
> >>> +
> >>> + if (ui->flags & USK_GHOST_WAIT) {
> >>> + if (!(gm->flags & USK_ADDR_RDY))
> >>> + return 1;
> >>
> >> Kiryuha, if we return "1", this means restore of file_desc is not possible
> >> at the moment, and the process may fall to sleep this case. So, it's need
> >> to wake it up, when the restore of the file_desc may continue. I.e., we need
> >> to use set_fds_event() in the places, where we set ui->flags |= USK_ADDR_RDY.
> >
> > Aha! Thanks for the note! Will update this particular patch.
>
> One more moment. Now it's not clear for me that there is no circular dependencies
> between waiting of other deleted socket and waiting of binding of a peer to connect
> to it. Are there no circular dependencies?
Should not be, but I'll recheck.
More information about the CRIU
mailing list