approaching 4.5.21 release

Mike Frysinger vapier at gentoo.org
Fri Feb 18 05:25:27 UTC 2011


On Thu, Feb 17, 2011 at 8:24 AM, Dmitry V. Levin wrote:
> On Thu, Feb 17, 2011 at 12:45:02AM -0500, Mike Frysinger wrote:
>> On Tuesday, February 08, 2011 20:25:39 Dmitry V. Levin wrote:
>> > - update linux/[^b]*/ioctlent.h, these files are quite outdated;
>>
>> the Blackfin one should be pretty up-to-date ;).
>
> That's why I wrote [^b]* instead of plain *. ;)

ah, sorry, missed that

>> the ADI distribution runs a
>> script to automatically make sure the Blackfin ioctl list isnt missing any new
>> ioctls from the current kernel and it tends to flag new stuff every time we
>> upgrade linux (imagine that).
>>
>> the duplication here though has irked me for some time, but i didnt feel like
>> trying to clean things up myself.  perhaps we should take the Blackfin one,
>> make it the canonical linux one, and punt the rest.  i dont have a problem
>> keeping one file up to date, so doing linux/ioctlent.h vs
>> linux/blackfin/ioctlent.h is fine.  but i dont really have the time or
>> inclination to review all the arches.
>
> I suppose we can safely drop outdated linux/[^b]*/ioctlent.h files then.
> WRT linux/ioctlent.h vs linux/blackfin/ioctlent.h, there are little
> differences, some of which (e.g. in asm/mtrr.h area) are quite obvious,

hadnt thought of the asm/ issues ... obviously there will be similar
holes across all arches.  it'd be nice if we could have
linux/ioctlent.h tail into an arch-specific ioctlent.h, but the list
has to remain sorted in source form ...

i guess that leaves us with wrapper macros ?  maybe something like:
#ifdef __bfin__
# define BFIN_IOCTL(x) x
#else
# define BFIN_IOCTL(x)
#endif

then for the Blackfin-specific ioctls, the header can read:
BFIN_IOCTL({"asm/foo.h", "FOO", 0x1234},)

just spit ballin here ...

> but others (e.g. linux/loop.h is missing in linux/ioctlent.h) are not.
> I'd really like to know the source of the latter.

this is because the kernel sources dont declare the loop ioctls using
the standard IO macros, just plain numbers.  i noticed one time while
stracing losetup and added them manually to the Blackfin header.  i
tried to rewrite the header to use proper IO macros, but the resulting
kernel didnt work correctly and i havent had time to track down what
was going wrong.
-mike




More information about the Strace-devel mailing list