Hi, I started work on SPDK event notifications. I have few doubts that you might help me resolve. This functionality adds ability to register for specific events (i.e. a new bdev), and be notified asynchronously when those events occur. My proposal is three RPC calls based on following workflow: 1. After SPDK application starts, client sends RPCs to SPDK about what kinds of events it wants to register for. 2. Then, client subscribes to specified events. 3. Then the client periodically asks for new events. RPC Calls: 1. show_async_events component (optional) - show events for specified component only 2. register_async_events , unique_id - unique identifier for client events - list of comma separated events which client wants to subscribe to. (Additional question: Does event should have parameters too? e.g. subscribe only to event: deletion of bdev with specific name) Response is a list of types of events to which client was subscribed. 3. poll_async_events unique_id - unique identifier for client Response is a list of events which happen from last call, which include: - Component, # component type for which event is raised - Notification, # type of event, e.g. add, delete or update - Component_uuid, (e.g lvol uuid) - Parent_uuid (e.g. lvolstore uuid) My question is what are the types of events we could register to? I can think of few generic bdev events like: -added bdev -deleted bdev -updated bdev What other types of event do you see? You can also look at the updates on this topic on trello: https://trello.com/c/ZTIHxp3w/28-asynchronous-rpc-notifications -- Best Regards, Piotr Pelpliński