Module Name: src Committed By: jdolecek Date: Sat Sep 23 13:13:19 UTC 2017
Modified Files: src/sys/dev/ata [jdolecek-ncq]: ata.c Log Message: remove ata_queue_get_active_xfer() KASSERT() about having at least one active xfer; it can happen we get interrupt while no longer having the cmd active e.g. during recovery, and all callers handle getting NULL as result fixes panic in mvsata(4) during error recovery To generate a diff of this commit: cvs rdiff -u -r1.132.8.34 -r1.132.8.35 src/sys/dev/ata/ata.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/ata/ata.c diff -u src/sys/dev/ata/ata.c:1.132.8.34 src/sys/dev/ata/ata.c:1.132.8.35 --- src/sys/dev/ata/ata.c:1.132.8.34 Wed Sep 20 19:39:36 2017 +++ src/sys/dev/ata/ata.c Sat Sep 23 13:13:19 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: ata.c,v 1.132.8.34 2017/09/20 19:39:36 jdolecek Exp $ */ +/* $NetBSD: ata.c,v 1.132.8.35 2017/09/23 13:13:19 jdolecek Exp $ */ /* * Copyright (c) 1998, 2001 Manuel Bouyer. All rights reserved. @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.132.8.34 2017/09/20 19:39:36 jdolecek Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ata.c,v 1.132.8.35 2017/09/23 13:13:19 jdolecek Exp $"); #include "opt_ata.h" @@ -244,10 +244,7 @@ ata_queue_get_active_xfer(struct ata_cha struct ata_xfer *xfer = NULL; ata_channel_lock(chp); - - KASSERT(chp->ch_queue->queue_active <= 1); xfer = ata_queue_get_active_xfer_locked(chp); - ata_channel_unlock(chp); return xfer;