[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1601251016490.1849-100000@iolanthe.rowland.org>
Date: Mon, 25 Jan 2016 10:21:21 -0500 (EST)
From: Alan Stern <stern@...land.harvard.edu>
To: Bjørn Mork <bjorn@...k.no>
cc: Emilio López <emilio.lopez@...labora.co.uk>,
<gregkh@...uxfoundation.org>, <kborer@...il.com>,
<k.opasiak@...sung.com>, <reillyg@...omium.org>,
<keescook@...omium.org>, <linux-api@...r.kernel.org>,
<linux-usb@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<jorgelo@...omium.org>, <dan.carpenter@...cle.com>
Subject: Re: [PATCH v2] usb: devio: Add ioctl to disallow detaching kernel
USB drivers.
On Mon, 25 Jan 2016, Bjørn Mork wrote:
> I don't feel much like an expert here, but I can certainly make up an
> opinion anyway :)
>
> Since 64bits kernels allow usb devio with interface numbers up to 63, I
> guess you need __u64 to avoid limiting the range? Limiting will create
> all sorts of followup problems, so it's definitely easiest to just go
> with __u64.
But the Linux USB stack only allows up to 32 interfaces (see
include/linux/usb.h):
/* this maximum is arbitrary */
#define USB_MAXINTERFACES 32
So there's no point using a 64-bit value.
On the other hand, this value is supposed to be the same size as
ps->ifclaimed, which is used as an argument to clear_bit(), set_bit(),
and test_bit(). Those routines require unsigned long.
Alan Stern
Powered by blists - more mailing lists