NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-xen/47193: xenwatch handlers are added twice to the list of pending watches



The following reply was made to PR port-xen/47193; it has been noted by GNATS.

From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau%citrix.com@localhost>
To: Cherry G.Mathew <cherry%zyx.in@localhost>
Cc: "gnats-bugs%NetBSD.org@localhost" <gnats-bugs%NetBSD.org@localhost>,
        "port-xen-maintainer%netbsd.org@localhost" 
<port-xen-maintainer%netbsd.org@localhost>,
        "netbsd-bugs%netbsd.org@localhost" <netbsd-bugs%netbsd.org@localhost>
Subject: Re: port-xen/47193: xenwatch handlers are added twice to the list
 of pending watches
Date: Mon, 19 Nov 2012 10:35:03 +0100

 On 17/11/12 17:07, Cherry G.Mathew wrote:
 > Yes, but split() itself is not called unconditionally, whereas malloc()
 > is. 
 
 I've taken a quick look at this, and body is allocated in process_msg.
 If message type is a watch, body is freed by split, if it's not a watch,
 body is saved to msg->u.reply.body, which is appended to the list of
 pending messages.
 
 This list is read by read_reply, which will return the body to the
 caller function, that's xenbus_dev_request_and_reply, which will also
 return body to the caller function, or xs_talkv, which will free the
 body if msg type is XS_ERROR or user did not provide a valid pointer to
 store body to, if user provided a valid pointer, body is returned.
 
 Did you mean that there is an error in process_msg itself, or in one of
 the callers of the other functions that also use body? If so we should
 open a new PR.
 
 Regarding the problem at hand, do you think the last patch is ok to commit?
 


Home | Main Index | Thread Index | Old Index