Hi Thomas, On Mon, Jun 24, 2019 at 05:42:39PM +0200, Thomas Gleixner wrote: > On Mon, 24 Jun 2019, Weiping Zhang wrote: > > > The driver may implement multiple affinity set, and some of > > are empty, for this case we just skip them. > > Why? What's the point of creating empty sets? Just because is not a real > good justification. Patch 5 will add 4 new sets for supporting NVMe's weighted round robin arbitration. It can be a headache to manage so many irq sets(now the total sets can become 6) dynamically since size of anyone in the new 4 sets can be zero, so each particular set is assigned one static index for avoiding the management trouble, then empty set will be seen by irq_create_affinity_masks(). So looks skipping the empty set makes sense because the API will become easier to use than before. Thanks, Ming