|
|
Log in / Subscribe / Register

More API changes in 2.6.16

More API changes in 2.6.16

Posted Aug 4, 2006 19:32 UTC (Fri) by smurf (subscriber, #17840)
Parent article: API changes in the 2.6 kernel series

An email address to report new (or missing) missing entries would be nice...

  • 2.6.16: network device drivers' ioctl() methods cannot call dev_ioctl() any more; they need to return -ENOIOCTLCMD instead, and the upper layer will do it for them.

    Accordingly, dev_ioctl() is no longer exported to modules.

  • 2.6.16: tty buffering layer revamp.

    The interface is now

     
            len = tty_request_buffer_room(tty, amount_hardware_says);
            tty_insert_flip_string(tty, buffer_from_card, len);
        

    There are also a

            int tty_prepare_flip_string(tty, strptr, len);
    

    so that on can copy large blocks directly from I/O space to the flip buffer.


to post comments

More API changes in 2.6.16

Posted Aug 22, 2008 9:44 UTC (Fri) by mlfowler (guest, #29063) [Link]

I've just been experimenting with ldd3's tty chapter and had got stuck when the compiler complained about tty->filp.count. Your errata pointed me in the right direction, thanks! One small correction, turns out the interface is:
    len = tty_buffer_request_room(tty, amount_hardware_says);
    tty_insert_flip_string(tty, buffer_from_card, len);

More API changes

Posted Jan 6, 2010 21:08 UTC (Wed) by phormion (guest, #62841) [Link]

We have this fairly complex proprietary kernel module which we currently build against 2.6.7 (ancient, I know) and decided to try with a more recent kernel (2.6.27 - that's what we have available at the moment). There were a few issues, and what's surprising is almost none of them could be found on this page:
  • the 'func' member in struct packet_type has changed signature (one extra net_device * argument); since 2.6.14, see here
  • INIT_WORK() takes only 2 arguments since 2.6.20 (see here)
  • some functions (dev_get_by_index(), devinet_ioctl()) take an extra argument pointing to the net namespace
  • other small stuff like SET_MODULE_OWNER() removed (was a nop in 2.6 anyway), netfilter defines like NF_IP_LOCAL_* renamed to NF_INET_LOCAL_*


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds