2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-30 16:13:54 +08:00

xfs: fix possible NULL dereference in xlog_verify_iclog

In xlog_verify_iclog a debug check of the incore log buffers prints an
error if icptr is null and then goes on to dereference the pointer
regardless.  Convert this to an assert so that the intention is clear.
This was reported by Coverty.

Signed-off-by: Ben Myers <bpm@sgi.com>
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
This commit is contained in:
Geyslan G. Bem 2013-10-30 16:01:00 -05:00 committed by Ben Myers
parent 5bf1f439c8
commit 643f7c4e56

View File

@ -3710,11 +3710,9 @@ xlog_verify_iclog(
/* check validity of iclog pointers */ /* check validity of iclog pointers */
spin_lock(&log->l_icloglock); spin_lock(&log->l_icloglock);
icptr = log->l_iclog; icptr = log->l_iclog;
for (i=0; i < log->l_iclog_bufs; i++) { for (i = 0; i < log->l_iclog_bufs; i++, icptr = icptr->ic_next)
if (icptr == NULL) ASSERT(icptr);
xfs_emerg(log->l_mp, "%s: invalid ptr", __func__);
icptr = icptr->ic_next;
}
if (icptr != log->l_iclog) if (icptr != log->l_iclog)
xfs_emerg(log->l_mp, "%s: corrupt iclog ring", __func__); xfs_emerg(log->l_mp, "%s: corrupt iclog ring", __func__);
spin_unlock(&log->l_icloglock); spin_unlock(&log->l_icloglock);