:When copying over (FreeBSD client) the multipatch from a Linux (2.2.11)
:box before the patch I got this garbage in the file, -current as of 4am
:this morning.  gzip'ed version has bad crc's.  Went the other way and it
:worked fine (Linux client), this is v2 via amd.
:
:...
:Update: after reboot with new kernel I get the same thing.  It's
:reproducible.  It doesn't happen between linux boxen and doesn't happen
:on loopback mounts.
:
:-Rob

    Same thing before and after the patch, so the patch itself is not the
    problem?  Then this is a preexisting bug of some sort.

    Hmm.  The question is how to focus on the bug.  The FreeBSD 'cp' command
    uses mmap().  On the linux box 'cp' the file to a different name and then
    try using 'cat' on the freebsd client to read it, redirected to a
    localfile.  Then see if the local file is corrupted.  Copy the file to
    a different name on the linux box again, and this time use 'cp' on the
    freebsd box to see if you get the corruption.  ( the act of copying the
    file on the linux box to a different name removes any possibility of 
    it being already-cached on the freebsd client when we run our test ).

        linux> cp multipatch-1.diff test1
        fbsd> cat <remotelinuxbox>/test1 local1
        fbsd> (check for corruption in local1)

        linux> cp multipatch-1.diff test2
        fbsd> cp <remotelinuxbox>/test2 local2
        fbsd> (check for corruption in local2)

    If the corruption occurs with 'cp' but not 'cat' then we know it has
    something to do with mmap.  If it occurs with both commands then the
    corruption may be a bug on the linux server.

    If you can repeat the corruption using the above test the next step is
    to try to determine whether the bug is in the linux server or the freebsd
    client.   I kinda suspect the linux box because there are no cache
    interaction issues w/ the freebsd box if the client is simply reading the
    file.

                                        -Matt
                                        Matthew Dillon 
                                        <[EMAIL PROTECTED]>

:+               if (vp->v_object &&
:+                  (vp->v_object->flags & OBJ_MIGHTBEDIRTY)) {
:               
:^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
:^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
:^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
:^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
:^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
:^@^@^@^@^@^@^@^@requested range.  Note:  we are assuming that
:



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to