[LU-7766] LNetEQAlloc() misuses roundup_pow_of_two() Created: 09/Feb/16 Updated: 06/Dec/16 Resolved: 21/Feb/16 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.8.0 |
| Type: | Bug | Priority: | Blocker |
| Reporter: | John Hammond | Assignee: | Oleg Drokin |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Severity: | 3 |
| Rank (Obsolete): | 9223372036854775807 |
| Description |
|
After http://review.whamcloud.com/16914 we see the following when starting LNet: [690112.179415] LNet: 8882:0:(lib-eq.c:87:LNetEQAlloc()) EQ callback is guaranteed to get every event, do you still want to set eqcount 1 for polling event which will have locking overhead? Please contact with developer to confirm Here LNetEQAlloc() is being called with a count of 0 and passing that to roundup_pow_of_two(). This is undefined behavior according to http://lxr.free-electrons.com/source/tools/include/linux/log2.h#L161. |
| Comments |
| Comment by Joseph Gmitter (Inactive) [ 09/Feb/16 ] |
|
Oleg is planning to submit a patch for this. |
| Comment by Gerrit Updater [ 09/Feb/16 ] |
|
Oleg Drokin (oleg.drokin@intel.com) uploaded a new patch: http://review.whamcloud.com/18370 |
| Comment by Oleg Drokin [ 09/Feb/16 ] |
|
I submitted the same patch upstream a few days ago, but did not notice we imported this bug into our tree too. |
| Comment by Bob Glossman (Inactive) [ 16/Feb/16 ] |
|
just noticed the annoying new lnet warning message today. talked about it on Skype. good to know there's already a patch in flight to fix it. |
| Comment by Gerrit Updater [ 20/Feb/16 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/18370/ |
| Comment by Peter Jones [ 21/Feb/16 ] |
|
Landed for 2.8 |