Messages in this thread | | | Date | Wed, 26 Mar 2014 10:50:38 -0600 | From | Linn Crosetto <> | Subject | Re: [PATCH v3] x86, irq: get correct available vectors for cpu disable |
| |
On Tue, Mar 25, 2014 at 05:18:53PM -0700, Yinghai Lu wrote: > On Tue, Mar 25, 2014 at 1:03 PM, Linn Crosetto <linn@hp.com> wrote: > > Thanks for the patch. > > > > On Tue, Jan 28, 2014 at 01:54:05PM -0800, Yinghai Lu wrote: > >> used_vectors is a bitmap for vectors that are not tracked in per_cpu > >> vector_irq. > > > > I feel like this comment (also in the code) could be misleading because vectors > > above first_system_vector are effectively not tracked in per_cpu vector_irq, but > > also may not have the bit set in used_vectors. For example, used_vectors from a > > system that I am looking at now: > > > > first_system_vector > > 239 255 > > | | > > 10 01000 11111 11111 > > > > test_bit(240, used_vectors) does not return the correct answer to the question > > about whether the vector is tracked in per_cpu vector_irq. This leads to two > > meanings for the bitmap; for vectors less than first_system_vector whether or > > not they are tracked in per_cpu vector_irq, and for vectors above > > first_system_vector, whether or not they are in use: > > > > static inline int is_per_cpu_vector(int vector) { > > return !test_bit(vector, used_vectors) && > > vector < first_system_vector; > > } > > sorry, I can not catch what you want to say. > > Do you mean the change log or comment in the patch is not right?
Just noting that not all bits above first_system_vector are set in the bitmap, so the comment in asm/desc.h and the change log could be misleading:
/* used_vectors is BITMAP for irq is not managed by percpu vector_irq */
I have tested and the patch itself is good.
Thanks, Linn
| |