summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/kern/sys_generic.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/kern/sys_generic.c b/sys/kern/sys_generic.c
index 04213c006e52..878167692eb0 100644
--- a/sys/kern/sys_generic.c
+++ b/sys/kern/sys_generic.c
@@ -663,18 +663,19 @@ int
sys_ioctl(struct thread *td, struct ioctl_args *uap)
{
u_char smalldata[SYS_IOCTL_SMALL_SIZE] __aligned(SYS_IOCTL_SMALL_ALIGN);
- u_long com;
+ uint32_t com;
int arg, error;
u_int size;
caddr_t data;
+#ifdef INVARIANTS
if (uap->com > 0xffffffff) {
printf(
"WARNING pid %d (%s): ioctl sign-extension ioctl %lx\n",
td->td_proc->p_pid, td->td_name, uap->com);
- uap->com &= 0xffffffff;
}
- com = uap->com;
+#endif
+ com = (uint32_t)uap->com;
/*
* Interpret high order word to find amount of data to be