Cast all ioctl command arguments through uint32_t internally.

Hide debug print showing use of sign extended ioctl command argument
under INVARIANTS. The print is available to all and can easily fill
up the logs.

No functional change intended.

MFC after:	1 week
Sponsored by:	Mellanox Technologies
This commit is contained in:
Hans Petter Selasky 2020-04-15 13:20:51 +00:00
parent 6f2b877647
commit a90fb6cf3c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=359968

View File

@ -652,18 +652,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