Module Name: src Committed By: riastradh Date: Sun Dec 19 11:21:38 UTC 2021
Modified Files: src/sys/external/bsd/drm2/linux: linux_rwsem.c Log Message: linux: Use IPL_VM for lock inside rw_semaphore. down_read_trylock needs to work under a spin lock. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/external/bsd/drm2/linux/linux_rwsem.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/external/bsd/drm2/linux/linux_rwsem.c diff -u src/sys/external/bsd/drm2/linux/linux_rwsem.c:1.1 src/sys/external/bsd/drm2/linux/linux_rwsem.c:1.2 --- src/sys/external/bsd/drm2/linux/linux_rwsem.c:1.1 Sun Dec 19 11:21:30 2021 +++ src/sys/external/bsd/drm2/linux/linux_rwsem.c Sun Dec 19 11:21:38 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: linux_rwsem.c,v 1.1 2021/12/19 11:21:30 riastradh Exp $ */ +/* $NetBSD: linux_rwsem.c,v 1.2 2021/12/19 11:21:38 riastradh Exp $ */ /*- * Copyright (c) 2021 The NetBSD Foundation, Inc. @@ -27,7 +27,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_rwsem.c,v 1.1 2021/12/19 11:21:30 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_rwsem.c,v 1.2 2021/12/19 11:21:38 riastradh Exp $"); #include <sys/types.h> @@ -45,7 +45,7 @@ void init_rwsem(struct rw_semaphore *rwsem) { - mutex_init(&rwsem->rws_lock, MUTEX_DEFAULT, IPL_NONE); + mutex_init(&rwsem->rws_lock, MUTEX_DEFAULT, IPL_VM); cv_init(&rwsem->rws_cv, "lnxrwsem"); rwsem->rws_writer = NULL; rwsem->rws_readers = 0;