summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2015-01-24 12:51:15 +0000
committerkib <kib@FreeBSD.org>2015-01-24 12:51:15 +0000
commitb8f7b5ec8d512cfc097c9038c760c6ab3382a28b (patch)
treebc8c7de964ccf975be08918db2e57f0b9bb3c01f
parentf3fd716384efab41262353c6ad81586b9c202822 (diff)
downloadFreeBSD-src-b8f7b5ec8d512cfc097c9038c760c6ab3382a28b.zip
FreeBSD-src-b8f7b5ec8d512cfc097c9038c760c6ab3382a28b.tar.gz
Remove Giant from /dev/mem and /dev/kmem. It is definitely not needed
for i386, and from the code inspection, nothing in the arm/mips/sparc64 implementations depends on it. Discussed with: imp, nwhitehorn Sponsored by: The FreeBSD Foundation MFC after: 3 weeks
-rw-r--r--sys/arm/arm/mem.c2
-rw-r--r--sys/dev/mem/memdev.c2
-rw-r--r--sys/i386/i386/mem.c4
-rw-r--r--sys/mips/mips/mem.c2
-rw-r--r--sys/sparc64/sparc64/mem.c2
5 files changed, 1 insertions, 11 deletions
diff --git a/sys/arm/arm/mem.c b/sys/arm/arm/mem.c
index 460a004..30d4b1d 100644
--- a/sys/arm/arm/mem.c
+++ b/sys/arm/arm/mem.c
@@ -82,8 +82,6 @@ memrw(struct cdev *dev, struct uio *uio, int flags)
int error = 0;
vm_offset_t addr, eaddr;
- GIANT_REQUIRED;
-
while (uio->uio_resid > 0 && error == 0) {
iov = uio->uio_iov;
if (iov->iov_len == 0) {
diff --git a/sys/dev/mem/memdev.c b/sys/dev/mem/memdev.c
index 37bad15..c3d1af1 100644
--- a/sys/dev/mem/memdev.c
+++ b/sys/dev/mem/memdev.c
@@ -52,7 +52,7 @@ static struct cdev *memdev, *kmemdev;
static struct cdevsw mem_cdevsw = {
.d_version = D_VERSION,
- .d_flags = D_MEM|D_NEEDGIANT,
+ .d_flags = D_MEM,
.d_open = memopen,
.d_read = memrw,
.d_write = memrw,
diff --git a/sys/i386/i386/mem.c b/sys/i386/i386/mem.c
index 9c83f47..b036bd3 100644
--- a/sys/i386/i386/mem.c
+++ b/sys/i386/i386/mem.c
@@ -86,10 +86,6 @@ memrw(struct cdev *dev, struct uio *uio, int flags)
int error = 0;
vm_offset_t addr;
- /* XXX UPS Why ? */
- GIANT_REQUIRED;
-
-
if (dev2unit(dev) != CDEV_MINOR_MEM && dev2unit(dev) != CDEV_MINOR_KMEM)
return EIO;
diff --git a/sys/mips/mips/mem.c b/sys/mips/mips/mem.c
index d40c424..08bb6b0 100644
--- a/sys/mips/mips/mem.c
+++ b/sys/mips/mips/mem.c
@@ -85,8 +85,6 @@ memrw(struct cdev *dev, struct uio *uio, int flags)
cnt = 0;
error = 0;
- GIANT_REQUIRED;
-
pmap_page_init(&m);
while (uio->uio_resid > 0 && !error) {
iov = uio->uio_iov;
diff --git a/sys/sparc64/sparc64/mem.c b/sys/sparc64/sparc64/mem.c
index d09f6b8..6bd5225 100644
--- a/sys/sparc64/sparc64/mem.c
+++ b/sys/sparc64/sparc64/mem.c
@@ -99,8 +99,6 @@ memrw(struct cdev *dev, struct uio *uio, int flags)
error = 0;
ova = 0;
- GIANT_REQUIRED;
-
while (uio->uio_resid > 0 && error == 0) {
iov = uio->uio_iov;
if (iov->iov_len == 0) {
OpenPOWER on IntegriCloud