summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/dev/ieee488/upd7210.c2
-rw-r--r--sys/dev/led/led.c3
-rw-r--r--sys/dev/md/md.c3
-rw-r--r--sys/geom/geom_dev.c2
-rw-r--r--sys/kern/kern_conf.c19
-rw-r--r--sys/sys/conf.h2
6 files changed, 14 insertions, 17 deletions
diff --git a/sys/dev/ieee488/upd7210.c b/sys/dev/ieee488/upd7210.c
index c014f9f..27359e2 100644
--- a/sys/dev/ieee488/upd7210.c
+++ b/sys/dev/ieee488/upd7210.c
@@ -277,7 +277,7 @@ upd7210attach(struct upd7210 *u)
struct cdev *dev;
if (units == NULL)
- units = new_unrhdr(0, minor2unit(MAXMINOR), NULL);
+ units = new_unrhdr(0, INT_MAX, NULL);
u->unit = alloc_unr(units);
mtx_init(&u->mutex, "gpib", NULL, MTX_DEF);
u->cdev = make_dev(&gpib_l_cdevsw, u->unit,
diff --git a/sys/dev/led/led.c b/sys/dev/led/led.c
index b9aae50..73af18a 100644
--- a/sys/dev/led/led.c
+++ b/sys/dev/led/led.c
@@ -15,6 +15,7 @@ __FBSDID("$FreeBSD$");
#include <sys/conf.h>
#include <sys/kernel.h>
#include <sys/systm.h>
+#include <sys/limits.h>
#include <sys/malloc.h>
#include <sys/ctype.h>
#include <sys/sbuf.h>
@@ -298,7 +299,7 @@ static void
led_drvinit(void *unused)
{
- led_unit = new_unrhdr(0, minor2unit(MAXMINOR), NULL);
+ led_unit = new_unrhdr(0, INT_MAX, NULL);
mtx_init(&led_mtx, "LED mtx", NULL, MTX_DEF);
sx_init(&led_sx, "LED sx");
callout_init(&led_ch, CALLOUT_MPSAFE);
diff --git a/sys/dev/md/md.c b/sys/dev/md/md.c
index 639f4d8..93b407d 100644
--- a/sys/dev/md/md.c
+++ b/sys/dev/md/md.c
@@ -64,6 +64,7 @@
#include <sys/fcntl.h>
#include <sys/kernel.h>
#include <sys/kthread.h>
+#include <sys/limits.h>
#include <sys/linker.h>
#include <sys/lock.h>
#include <sys/malloc.h>
@@ -1234,7 +1235,7 @@ g_md_init(struct g_class *mp __unused)
md_preloaded(ptr, len);
sx_xunlock(&md_sx);
}
- status_dev = make_dev(&mdctl_cdevsw, MAXMINOR, UID_ROOT, GID_WHEEL,
+ status_dev = make_dev(&mdctl_cdevsw, INT_MAX, UID_ROOT, GID_WHEEL,
0600, MDCTL_NAME);
g_topology_lock();
}
diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c
index c379d06..4abbfc0 100644
--- a/sys/geom/geom_dev.c
+++ b/sys/geom/geom_dev.c
@@ -88,7 +88,7 @@ static void
g_dev_init(struct g_class *mp)
{
- unithdr = new_unrhdr(0, minor2unit(MAXMINOR), NULL);
+ unithdr = new_unrhdr(0, INT_MAX, NULL);
}
void
diff --git a/sys/kern/kern_conf.c b/sys/kern/kern_conf.c
index d4a421c..39cc8a7 100644
--- a/sys/kern/kern_conf.c
+++ b/sys/kern/kern_conf.c
@@ -501,7 +501,7 @@ minor(struct cdev *x)
{
if (x == NULL)
return NODEV;
- return(x->si_drv0 & MAXMINOR);
+ return (x->si_drv0);
}
int
@@ -510,23 +510,21 @@ dev2unit(struct cdev *x)
if (x == NULL)
return NODEV;
- return (minor2unit(minor(x)));
+ return (x->si_drv0);
}
u_int
minor2unit(u_int _minor)
{
- KASSERT((_minor & ~MAXMINOR) == 0, ("Illegal minor %x", _minor));
- return ((_minor & 0xff) | ((_minor >> 8) & 0xffff00));
+ return (_minor);
}
int
unit2minor(int unit)
{
- KASSERT(unit <= 0xffffff, ("Invalid unit (%d) in unit2minor", unit));
- return ((unit & 0xff) | ((unit << 8) & ~0xffff));
+ return (unit);
}
static void
@@ -580,16 +578,18 @@ newdev(struct cdevsw *csw, int y, struct cdev *si)
return (si);
}
+#define UMINORMASK 0xffff00ffU
+
int
uminor(dev_t dev)
{
- return (dev & MAXMINOR);
+ return (dev & UMINORMASK);
}
int
umajor(dev_t dev)
{
- return ((dev & ~MAXMINOR) >> 8);
+ return ((dev & ~UMINORMASK) >> 8);
}
static void
@@ -697,9 +697,6 @@ make_dev_credv(int flags, struct cdevsw *devsw, int minornr,
struct cdev *dev;
int i;
- KASSERT((minornr & ~MAXMINOR) == 0,
- ("Invalid minor (0x%x) in make_dev", minornr));
-
dev = devfs_alloc();
dev_lock();
prep_cdevsw(devsw);
diff --git a/sys/sys/conf.h b/sys/sys/conf.h
index 3b4e174..b9ba8fd 100644
--- a/sys/sys/conf.h
+++ b/sys/sys/conf.h
@@ -223,8 +223,6 @@ struct cdevsw {
#define NUMCDEVSW 256
-#define MAXMINOR 0xffff00ffU
-
struct module;
struct devsw_module_data {
OpenPOWER on IntegriCloud