From owner-svn-src-projects@FreeBSD.ORG Mon Dec 5 15:16:48 2011 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 19A27106566B; Mon, 5 Dec 2011 15:16:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id F3F1D8FC0C; Mon, 5 Dec 2011 15:16:47 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id pB5FGlvN042472; Mon, 5 Dec 2011 15:16:47 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id pB5FGl6f042470; Mon, 5 Dec 2011 15:16:47 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201112051516.pB5FGl6f042470@svn.freebsd.org> From: Alexander Motin Date: Mon, 5 Dec 2011 15:16:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r228279 - projects/head_mfi/sys/dev/mfi X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Dec 2011 15:16:48 -0000 Author: mav Date: Mon Dec 5 15:16:47 2011 New Revision: 228279 URL: http://svn.freebsd.org/changeset/base/228279 Log: Remove superfluous !TAILQ_EMPTY() checks before TAILQ_FOREACH(). Modified: projects/head_mfi/sys/dev/mfi/mfi.c Modified: projects/head_mfi/sys/dev/mfi/mfi.c ============================================================================== --- projects/head_mfi/sys/dev/mfi/mfi.c Mon Dec 5 15:11:35 2011 (r228278) +++ projects/head_mfi/sys/dev/mfi/mfi.c Mon Dec 5 15:16:47 2011 (r228279) @@ -1335,32 +1335,28 @@ mfi_syspdprobe(struct mfi_softc *sc) hdr->cmd_status); goto out; } + /* Get each PD and add it to the system */ for (i=0;icount;i++) { if(pdlist->addr[i].device_id == pdlist->addr[i].encl_device_id) goto skip_sys_pd_add; - /* Get each PD and add it to the system */ - if (!TAILQ_EMPTY(&sc->mfi_syspd_tqh)) { - TAILQ_FOREACH(syspd, &sc->mfi_syspd_tqh,pd_link) { + TAILQ_FOREACH(syspd, &sc->mfi_syspd_tqh,pd_link) { if (syspd->pd_id == pdlist->addr[i].device_id) goto skip_sys_pd_add; - } } mfi_add_sys_pd(sc,pdlist->addr[i].device_id); skip_sys_pd_add:; } /* Delete SYSPD's whose state has been changed */ - if (!TAILQ_EMPTY(&sc->mfi_syspd_tqh)) { - TAILQ_FOREACH(syspd, &sc->mfi_syspd_tqh,pd_link) { - for (i=0;icount;i++) { - if (syspd->pd_id == pdlist->addr[i].device_id) - goto skip_sys_pd_delete; - } - mtx_lock(&Giant); - device_delete_child(sc->mfi_dev,syspd->pd_dev); - mtx_unlock(&Giant); -skip_sys_pd_delete:; + TAILQ_FOREACH(syspd, &sc->mfi_syspd_tqh,pd_link) { + for (i=0;icount;i++) { + if (syspd->pd_id == pdlist->addr[i].device_id) + goto skip_sys_pd_delete; } + mtx_lock(&Giant); + device_delete_child(sc->mfi_dev,syspd->pd_dev); + mtx_unlock(&Giant); +skip_sys_pd_delete:; } out: if (pdlist) @@ -1484,27 +1480,24 @@ mfi_decode_evt(struct mfi_softc *sc, str case MR_EVT_ARGS_LD_STATE: /* During load time driver reads all the events starting from the one that * has been logged after shutdown. Avoid these old events. - */ - if (!TAILQ_EMPTY(&sc->mfi_ld_tqh)) { - if (detail->args.ld_state.new_state == MFI_LD_STATE_OFFLINE ) { - /* Remove the LD */ - struct mfi_disk *ld = NULL; - TAILQ_FOREACH(ld, &sc->mfi_ld_tqh, ld_link) { - if (ld->ld_id == detail->args.ld_state.ld.target_id) - break; - } - /* - Fix: for kernel panics when SSCD is removed - KASSERT(ld != NULL, ("volume dissappeared")); - */ - if(ld != NULL) - { - mtx_lock(&Giant); - device_delete_child(sc->mfi_dev, ld->ld_dev); - mtx_unlock(&Giant); - } + */ + if (detail->args.ld_state.new_state == MFI_LD_STATE_OFFLINE ) { + /* Remove the LD */ + struct mfi_disk *ld; + TAILQ_FOREACH(ld, &sc->mfi_ld_tqh, ld_link) { + if (ld->ld_id == detail->args.ld_state.ld.target_id) + break; } - } + /* + Fix: for kernel panics when SSCD is removed + KASSERT(ld != NULL, ("volume dissappeared")); + */ + if(ld != NULL) { + mtx_lock(&Giant); + device_delete_child(sc->mfi_dev, ld->ld_dev); + mtx_unlock(&Giant); + } + } break; case MR_EVT_ARGS_PD: #define MR_EVT_PD_REMOVED 0x0070 @@ -1512,16 +1505,14 @@ mfi_decode_evt(struct mfi_softc *sc, str if (detail->code == MR_EVT_PD_REMOVED) { if (probe_sys_pd) { /* If the removed device is a SYSPD then delete it */ - if (!TAILQ_EMPTY(&sc->mfi_syspd_tqh)) { - TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { + TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { if (syspd->pd_id == detail->args.pd.device_id) { mtx_lock(&Giant); device_delete_child(sc->mfi_dev,syspd->pd_dev); mtx_unlock(&Giant); break; } - } - } + } } } if (detail->code == MR_EVT_PD_INSERTED) { @@ -2544,11 +2535,9 @@ mfi_check_command_pre(struct mfi_softc * mbox = (uint16_t *) cm->cm_frame->dcmd.mbox; syspd_id = mbox[0]; if (mbox[2] == MFI_PD_STATE_UNCONFIGURED_GOOD) { - if (!TAILQ_EMPTY(&sc->mfi_syspd_tqh)) { - TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { + TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { if(syspd->pd_id == syspd_id) break; - } } } else @@ -2611,11 +2600,9 @@ mfi_check_command_post(struct mfi_softc mbox = (uint16_t *) cm->cm_frame->dcmd.mbox; syspd_id = mbox[0]; if (mbox[2] == MFI_PD_STATE_UNCONFIGURED_GOOD) { - if (!TAILQ_EMPTY(&sc->mfi_syspd_tqh)) { - TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { + TAILQ_FOREACH(syspd,&sc->mfi_syspd_tqh,pd_link) { if(syspd->pd_id == syspd_id) break; - } } } else