geom_disk.c (110475) | geom_disk.c (110477) |
---|---|
1/*- 2 * Copyright (c) 2002 Poul-Henning Kamp 3 * Copyright (c) 2002 Networks Associates Technology, Inc. 4 * All rights reserved. 5 * 6 * This software was developed for the FreeBSD Project by Poul-Henning Kamp 7 * and NAI Labs, the Security Research Division of Network Associates, Inc. 8 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the --- 18 unchanged lines hidden (view full) --- 27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33 * SUCH DAMAGE. 34 * | 1/*- 2 * Copyright (c) 2002 Poul-Henning Kamp 3 * Copyright (c) 2002 Networks Associates Technology, Inc. 4 * All rights reserved. 5 * 6 * This software was developed for the FreeBSD Project by Poul-Henning Kamp 7 * and NAI Labs, the Security Research Division of Network Associates, Inc. 8 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the --- 18 unchanged lines hidden (view full) --- 27 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 28 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 29 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 30 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 31 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 32 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 33 * SUCH DAMAGE. 34 * |
35 * $FreeBSD: head/sys/geom/geom_disk.c 110475 2003-02-06 21:50:39Z phk $ | 35 * $FreeBSD: head/sys/geom/geom_disk.c 110477 2003-02-06 22:00:47Z phk $ |
36 */ 37 38#include "opt_geom.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/kernel.h> 43#include <sys/sysctl.h> --- 145 unchanged lines hidden (view full) --- 189 if (!(dp->d_flags & DISKFLAG_CANDELETE)) { 190 error = 0; 191 break; 192 } 193 /* fall-through */ 194 case BIO_READ: 195 case BIO_WRITE: 196 bp2 = g_clone_bio(bp); | 36 */ 37 38#include "opt_geom.h" 39 40#include <sys/param.h> 41#include <sys/systm.h> 42#include <sys/kernel.h> 43#include <sys/sysctl.h> --- 145 unchanged lines hidden (view full) --- 189 if (!(dp->d_flags & DISKFLAG_CANDELETE)) { 190 error = 0; 191 break; 192 } 193 /* fall-through */ 194 case BIO_READ: 195 case BIO_WRITE: 196 bp2 = g_clone_bio(bp); |
197 if (bp2 == NULL) { 198 error = ENOMEM; 199 break; 200 } |
|
197 bp2->bio_done = g_disk_done; 198 bp2->bio_blkno = bp2->bio_offset >> DEV_BSHIFT; 199 bp2->bio_pblkno = bp2->bio_offset / dp->d_sectorsize; 200 bp2->bio_bcount = bp2->bio_length; 201 bp2->bio_dev = dev; 202 bp2->bio_disk = dp; 203 g_disk_lock_giant(dp); 204 dp->d_strategy(bp2); --- 171 unchanged lines hidden --- | 201 bp2->bio_done = g_disk_done; 202 bp2->bio_blkno = bp2->bio_offset >> DEV_BSHIFT; 203 bp2->bio_pblkno = bp2->bio_offset / dp->d_sectorsize; 204 bp2->bio_bcount = bp2->bio_length; 205 bp2->bio_dev = dev; 206 bp2->bio_disk = dp; 207 g_disk_lock_giant(dp); 208 dp->d_strategy(bp2); --- 171 unchanged lines hidden --- |