[libvirt] [PATCH v8 2/7] qapi: Introduce add-fd, remove-fd, query-fdsets

Corey Bryant coreyb at linux.vnet.ibm.com
Fri Aug 10 14:21:17 UTC 2012



On 08/10/2012 03:20 AM, Stefan Hajnoczi wrote:
> On Thu, Aug 09, 2012 at 10:10:44PM -0400, Corey Bryant wrote:
>> +void qmp_remove_fd(int64_t fdset_id, bool has_fd, int64_t fd, Error **errp)
>> +{
>> +    MonFdset *mon_fdset;
>> +    MonFdsetFd *mon_fdset_fd;
>> +    char fd_str[20];
>> +
>> +    QLIST_FOREACH(mon_fdset, &mon_fdsets, next) {
>> +        if (mon_fdset->id != fdset_id) {
>> +            continue;
>> +        }
>> +        QLIST_FOREACH(mon_fdset_fd, &mon_fdset->fds, next) {
>> +            if (has_fd && mon_fdset_fd->fd != fd) {
>> +                continue;
>> +            }
>> +            mon_fdset_fd->removed = true;
>> +            if (has_fd) {
>> +                break;
>> +            }
>> +        }
>> +        monitor_fdset_cleanup(mon_fdset);
>> +        return;
>> +    }
>> +    snprintf(fd_str, sizeof(fd_str), "%" PRId64, fd);
>> +    error_set(errp, QERR_FD_NOT_FOUND, fd_str);
>
> fd is optional and may be uninitialized.  I think the human-readable
> string should be:
>
> if has_fd:
>      fd_str = '%s:%s' % (fdset_id, fd)
> else:
>      fd_str = '%s' % fdset_id
>
> Otherwise, looks good.
>

Good point, thanks.  I'll fix this.

-- 
Regards,
Corey




More information about the libvir-list mailing list