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

[Xen-API] tapdisk-nbd code review questions

Hi Jon,

A few questions after reviewing the new NBD code in tapdisk:

1. The tdnbd_data struct has the field "closed", which is assigned values 0, 2, 
and 3 in various places - what do those values mean? (We should make them into 

2. The list_move() on line 
looks like it would incorrectly move a READ request to 'completed' (if a READ 
req is queued) inside tdnbd_writer_cb() - or am I missing something?

3. In the same function as above, the return values from tdnbd_write_some() 
called on lines 278 & 281 aren't checked for negative values (errors) - I 
assume that's a TODO item?

4. In the fdreceiver, why do we support receiving (and stashing) multiple fd's 
in general? Do we currently have a use case where multiple fd's would be passed 
to the same tapdisk?

5. When receiving data from the nbd client, the nbd server blocks until all of 
the request is read: was this a design decision to simplify the code, even if 
that means a slow/malicious client could cause a DOS for other nbd clients?


Xen-api mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.