Re: isp driver not 64 bit?

From: David Gilbert (dgilbert_at_dclg.ca)
Date: 11/30/04

  • Next message: M. Warner Losh: "Re: A hack to rebuild port KLDs during kernel builds"
    Date: Mon, 29 Nov 2004 22:03:43 -0500
    To: "Matt Emmerton" <matt@gsicomp.on.ca>
    
    

    >>>>> "Matt" == Matt Emmerton <matt@gsicomp.on.ca> writes:

    Matt> You indicate that this probe is done properly.

    >> From what I see, cam_calc_geometry() is called *before* the device
    >> probe

    Matt> prints out the device size, so I'm unsure of how what you are
    Matt> describing can occur.

    Well... cam_calc_geometry seems to get called quite a bit. Almost
    everytime you touch the disk, in fact. fsck'ing a partition calls it,
    for instance.

    Console access is personally expensive (much driving, for instance),
    but from memory the debugging I put in cam_calc_geometry() would print
    before the correct output from dadone(). Your description reminds me
    of this --- but it's no less vexing that the output from dadone() has
    the correct sector and volume size and the ccg in cam_calc_geometry()
    has bogus data.

    I don't know if it's significant, but the correct numbers were:

    279353684 sectors of 512 bytes

    The ccg structure comes up with:

    3737169375 sectors of 3737169374 bytes

    Not entirely sensible. Interesting that they're close values.
    However, with different things on the stack, the values changed.

    Matt> Have you built & run a kernel compiled with "options CAMDEBUG" ?
    Matt> This may provide more insight into where things are going wrong.

    I put CAMDEBUG in the kernel, but it didn't seem to change the output
    that much. It seemed to dump the control block showing when geom
    tried to access the high block number --- and failed, but nothing else
    particularly useful.

    Dave.

    -- 
    ============================================================================
    |David Gilbert, Independent Contractor.       | Two things can only be     |
    |Mail:       dave@daveg.ca                    |  equal if and only if they |
    |http://daveg.ca                              |   are precisely opposite.  |
    =========================================================GLO================
    _______________________________________________
    freebsd-hackers@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
    To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@freebsd.org"
    

  • Next message: M. Warner Losh: "Re: A hack to rebuild port KLDs during kernel builds"