disk_conditioner_delay doesn't check whether vp is NULL
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=izRsEULVCwauMw3NET2wiA5peS5tNt+UGTmy5BP1VB8=; b=df3il4mgCylbb4i5/kSjWIfqiXqapKEZvuoku1wyPLoZYDLi68ZnfilLc4lkkIwD1JlyMXzyG7kkag6ADWrbmANm2H8Xosj0nKZC7pThKR8G16gEtzpwJKKe02JMWmJ0/lfy0FRrTOcBf2k5ns3h+qasMP62cdJxB8AGuIiNIEHL5ovwal+7N4uXS0xUrsJzrMeJtaz/6vq/zRz3WqsHbrl/scMbRloVzRcVNiQrhqlOwRTPcr0HeU7MviH3WBR8rMGfsgLfLO/a/0hZVRqPVKts42dmiUzCs+BpDcL4bzKCK9F9Kd2PStKLAeHMIYSKviHf7ZD0bfdeu0N+JDT1cA== Spamdiagnosticmetadata: NSPM Spamdiagnosticoutput: 1:99 Thread-index: AdO1ZqdJk6tI6dyNTrKzrY1zKYc7bQ== Thread-topic: disk_conditioner_delay doesn't check whether vp is NULL in bsd/vfs/vfs_disk_conditioner.c, disk_conditioner_delay() isn't guarding against NULL bp->b_vp. in bsd/vfs/vfs_bio.c: void buf_biodone(buf_t bp) { ... if (bp->b_vp && bp->b_vp->v_mount) { mp = bp->b_vp->v_mount; } else { mp = NULL; } ... disk_conditioner_delay(bp, 1, bp->b_bcount, read_elapsed_usec); in bsd/vfs/vfs_disk_conditioner.c: void disk_conditioner_delay(buf_t bp, int extents, int total_size, uint64_t already_elapsed_usec) { ... mp = buf_vnode(bp)->v_mount; if (!mp) { return; } ... } So a NULL check is needed similar to the one in buf_biodone(). Quinten Johnson quinten.johnson@outlook.com _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.... This email sent to site_archiver@lists.apple.com
participants (1)
-
Quinten Johnson