On 14.05.2012 20:20, Steve Reinhardt wrote:
> OK, it looks like the TCGET/TCSET and FIONREAD ioctls are common, but most > of the TIOCGET/TIOCSET ones are only supported in some ISAs (but most ISAs > other than x86 and ARM): > > http://tomoyo.sourceforge.jp/cgi-bin/lxr/ident?i=TIOCGETP > > I think the TIOC* ioctls are BSD-derived, and since we started on Alpha and > Tru64 is BSD-derived, those ioctls were common. Then the other ISAs mostly > just blindly copied the Alpha code and as long as nothing broke they were > OK. > > It also looks like all the TIOC* ioctls have the same definitions where > they are defined (though the _IOR() and _IOW() macros make that a little > hard to verify). > > What about defining all the ioctls in the common header, then just having a > per-ISA flag that says whether we care about the TIOC* ones or not? Or we > could just ignore all of them, on the assumption that Linux is unlikely to > re-use the codes for the TIOC* ioctls on x86 or ARM. Eitehr works for me, but if we go with the prior, the definitions can just be put in src/kern/linux/linux.hh. > Basically I'd like to see the solution that has the minimum amount of > redundancy and still works. > > Steve > > On Mon, May 14, 2012 at 11:45 AM, Marc Orr <[email protected]> wrote: > >> To clarify my comment about the arm linux.hh file: It seems that a couple of constants were updated to match the latest ioctls.h file that Steve referenced, while the other constants that don't occur in that file were left as is. Marc On Mon, May 14, 2012 at 11:40 AM, Marc Orr <[email protected] [5]> wrote: >> >>> Yes. so If you look at the file that Steve referenced, many of the tty ioctrls we define for the other archtectures don't occur. Also, I noticed that in the ARM linux.hh, the constants look a little questionable to me. It almost looks like they were copied and pasted from another architecture, and then a couple of them were changed to be ARM specific. Marc On Mon, May 14, 2012 at 1:05 AM, Gabe Black <[email protected] [1]> >> wrote: >> >>>> Oh, I see. There are two header files, ioctls.h and ioctl.h (one has an s). That's not confusing at all :-P. Gabe On 05/13/12 21:46, Steve Reinhardt wrote: >>>> >>>>> Looks like the latest kernel has all this in there... >> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=include/asm-generic/ioctls.h;h=199975fac395745342a6cabef1bfb612e73fc1dc;hb=HEAD [6] > > _______________________________________________ > gem5-dev mailing list > [email protected]http://m5sim.org/mailman/listinfo/gem5-dev Links: ------ [1] mailto:[email protected] [2] mailto:[email protected] [3] mailto:[email protected] [4] http://m5sim.org/mailman/listinfo/gem5-dev [5] mailto:[email protected] [6] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=blob;f=include/asm-generic/ioctls.h;h=199975fac395745342a6cabef1bfb612e73fc1dc;hb=HEAD [7] mailto:[email protected] [8] mailto:[email protected] [9] http://m5sim.org/mailman/listinfo/gem5-dev [10] mailto:[email protected] [11] http://m5sim.org/mailman/listinfo/gem5-dev _______________________________________________ gem5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/gem5-dev
