diff options
author | frank zago <fzago@cray.com> | 2016-09-18 16:38:17 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2016-09-19 09:51:52 +0200 |
commit | 2ce3647e9aba981f968f42f75f6b0af79332fee3 (patch) | |
tree | 63f62417b34196f3450e9678b40f4a8f8d3a95f4 /drivers/staging/lustre/lustre/llite/llite_internal.h | |
parent | 50932a2280970723a3a4f58cff929c92f65fc60b (diff) | |
download | op-kernel-dev-2ce3647e9aba981f968f42f75f6b0af79332fee3.zip op-kernel-dev-2ce3647e9aba981f968f42f75f6b0af79332fee3.tar.gz |
staging: lustre: llog: prevent out-of-bound index
llog_process_thread() can be called from llog_cat_process_cb with an
index already out of bound, leading to the following crash:
LustreError: 3773:0:(llog.c:310:llog_process_thread())
ASSERTION(index <= last_index + 1 ) failed:
LustreError: 3773:0:(llog.c:310:llog_process_thread()) LBUG
#0 [ffff8801144bf900] machine_kexec at ffffffff81038f3b
#1 [ffff8801144bf960] crash_kexec at ffffffff810c5d82
#2 [ffff8801144bfa30] panic at ffffffff8152798a
#3 [ffff8801144bfab0] lbug_with_loc at ffffffffa02f8eeb [libcfs]
#4 [ffff8801144bfad0] llog_process_thread at ffffffffa0413fff [obdclass]
#5 [ffff8801144bfb80] llog_process_or_fork at ffffffffa041585f [obdclass]
#6 [ffff8801144bfbd0] llog_cat_process_cb at ffffffffa0418612 [obdclass]
#7 [ffff8801144bfc30] llog_process_thread at ffffffffa0413c22 [obdclass]
#8 [ffff8801144bfce0] llog_process_or_fork at ffffffffa041585f [obdclass]
#9 [ffff8801144bfd30] llog_cat_process_or_fork at ffffffffa0416b9d [obdclass]
If index is too big, simply return success.
Signed-off-by: frank zago <fzago@cray.com>
Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5635
Reviewed-on: http://review.whamcloud.com/12161
Reviewed-by: Jinshan Xiong <jinshan.xiong@intel.com>
Reviewed-by: Patrick Farrell <paf@cray.com>
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
Signed-off-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/lustre/lustre/llite/llite_internal.h')
0 files changed, 0 insertions, 0 deletions