Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 15 Mar 2003 03:56:24 -0800
From:      Alfred Perlstein <bright@mu.org>
To:        Poul-Henning Kamp <phk@phk.freebsd.dk>
Cc:        current@freebsd.org
Subject:   Re: can't boot with twe anymore.
Message-ID:  <20030315115624.GD4145@elvis.mu.org>
In-Reply-To: <17808.1047722362@critter.freebsd.dk>
References:  <20030315022255.GW4145@elvis.mu.org> <17808.1047722362@critter.freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
* Poul-Henning Kamp <phk@phk.freebsd.dk> [030315 01:59] wrote:
> In message <20030315022255.GW4145@elvis.mu.org>, Alfred Perlstein writes:
> >Poul-Henning you promised me a patch two nights ago "within a couple
> >of hours"  It's now going on the 36th hour since.
> 
> Ok, 2nd try, this even compiles:

That looks like it might work, but doesn't it work around instead
of fix the problem you found where twe does sparse unit assignment?

> 
> 
> Index: twe_compat.h
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/twe/twe_compat.h,v
> retrieving revision 1.6
> diff -u -r1.6 twe_compat.h
> --- twe_compat.h	8 Mar 2003 08:01:30 -0000	1.6
> +++ twe_compat.h	15 Mar 2003 09:58:06 -0000
> @@ -166,7 +166,7 @@
>  # define TWE_BIO_LENGTH(bp)		(bp)->bio_bcount
>  # define TWE_BIO_LBA(bp)		(bp)->bio_pblkno
>  # define TWE_BIO_SOFTC(bp)		(bp)->bio_disk->d_drv1
> -# define TWE_BIO_UNIT(bp)		(bp)->bio_disk->d_unit
> +# define TWE_BIO_UNIT(bp)		*(int *)(bp->bio_driver1)
>  # define TWE_BIO_SET_ERROR(bp, err)	do { (bp)->bio_error = err; (bp)->bio_flags |= BIO_ERROR;} while(0)
>  # define TWE_BIO_HAS_ERROR(bp)		((bp)->bio_flags & BIO_ERROR)
>  # define TWE_BIO_RESID(bp)		(bp)->bio_resid
> Index: twe_freebsd.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/twe/twe_freebsd.c,v
> retrieving revision 1.24
> diff -u -r1.24 twe_freebsd.c
> --- twe_freebsd.c	8 Mar 2003 08:01:30 -0000	1.24
> +++ twe_freebsd.c	15 Mar 2003 09:57:24 -0000
> @@ -607,6 +607,7 @@
>  
>      debug_called(4);
>  
> +    bp->bio_driver1 = &sc->twed_drive->td_unit;
>      TWED_BIO_IN;
>  
>      /* bogus disk? */
> 
> -- 
> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk@FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe    
> Never attribute to malice what can adequately be explained by incompetence.

-- 
-Alfred Perlstein [alfred@freebsd.org]
'Instead of asking why a piece of software is using "1970s technology,"
 start asking why software is ignoring 30 years of accumulated wisdom.'

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030315115624.GD4145>