Announcement

Collapse
No announcement yet.

KDBUS & Other Features You Won't FInd In The Linux 4.0 Kernel

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by rdnetto View Post
    Here's my take on it, having read the mailing list thread:
    The kernel devs regard kdbus as a core kernel feature, and as such want it to use syscalls. (They also generally dislike ioctls due to the lack of type safety for user space.) (src)
    It's a bit weird that Lennart Poettering is putting out a kernel subsystem based on ioctls. This is what he had to say about ioctls in 2008:

    On Mon, 15.09.08 16:07, Dominik 'Rathann' Mierzejewski (dominik at greysector.net) wrote:

    > Do you mean Open Source Software or Open Sound System? In case of OSS,
    > it's realy a shame, because it was (and still is) a great piece of software
    > with nice API and doesn't require any external libraries like ALSA.
    > But you can't compare console/X to OSS/ALSA. The latter provide functionality

    I must correct you: the OSS API sucks. And ALSA is certainly a far
    greater piece of software than OSS ever was, and among the reasons is
    precisely the fact that it is a proper library instead of some fucked up kernel
    interface based on ioctls().

    Everyone hates ioctl()s. The kernel people do. The userspace people
    too. An API for application usage that is based around ioctl()s is
    thus mandatorily a big failure.

    Lennart
    https://lists.fedoraproject.org/pipe...er/010344.html

    Comment


    • #12
      Originally posted by pgoetz View Post
      It's a bit weird that Lennart Poettering is putting out a kernel subsystem based on ioctls. This is what he had to say about ioctls in 2008
      Quite many kernel interfaces are based in ioctls. Yet, ioctl isn't a good api to expose to apps and most of time ioctls are only visible to some lib, which exposes more convenient api to usermode apps. So it is often just matter of existence of lib which would wrap ioctl to something more fancy and convenient. I guess Poettering meant something like this.

      And as for OSS, it has been doomed to fail. Because they had "improved" proprietary version and opensource version has been second-class citizen. It's not like if it going to work with Linux. Linux meant to be first-class operating system and nobody needs or wants some limited version of proprietary stuff. That could be ok for stuff like BSDs, but not going to work for Linux. In Linux people usually respect themselves and would never agree they are second class compared to some first class proprietary crap. That's what I like about Linux.

      Comment


      • #13
        Originally posted by pgoetz View Post
        It's a bit weird that Lennart Poettering is putting out a kernel subsystem based on ioctls. This is what he had to say about ioctls in 2008:

        https://lists.fedoraproject.org/pipe...er/010344.html
        Strictly speaking, I don't think LP has actually been directly involved in the kernel. The kdbus guys seem to be mostly kernel devs, with some ties to Red Hat (and indirectly, systemd). So while systemd is a huge part of the reason for kdbus, the two groups are largely separate. (For instance, consider that kdbus has been in development for 2 years and hasn't been mainlined yet, while systemd got released long before it was ready.)

        As an aside, I find his opinion on OSS interesting, given that a friend of mine (whose job is to write and maintain ALSA drivers) consider OSS(v4) to have a superior design in terms of how it abstracts the hardware. I think the real issue with the OSS interface is that the average userspace programmer was expected to call ioctl() directly, instead of it being abstracted away behind a library.

        Comment

        Working...
        X