NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

PR/39536 CVS commit: src/sys/kern



The following reply was made to PR kern/39536; it has been noted by GNATS.

From: Juergen Hannken-Illjes <hannken%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc: 
Subject: PR/39536 CVS commit: src/sys/kern
Date: Wed, 24 Sep 2008 08:19:19 +0000 (UTC)

 Module Name:   src
 Committed By:  hannken
 Date:          Wed Sep 24 08:19:19 UTC 2008
 
 Modified Files:
        src/sys/kern: kern_physio.c
 
 Log Message:
 Resolve a race when physio_done signals completion before it tries to
 free a buffer.  This will fail if the buffer owner has a chance to
 modify the BC_DONTFREE flag before putphysbuf() examines it.
 
 Fix by removing get/putphysbuf() and BC_DONTFREE.  Physio_done() now
 has an explicit test for a buffer coming from the call of physio().
 
 Observed by Lars Nordlund when writing a DVD with growisofs, see PR kern/39536.
 
 Reviewed by: Jason Thorpe <thorpej%netbsd.org@localhost>
 
 
 To generate a diff of this commit:
 cvs rdiff -r1.87 -r1.88 src/sys/kern/kern_physio.c
 
 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.
 


Home | Main Index | Thread Index | Old Index