Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups - Kernel

This is a discussion on Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups - Kernel ; -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Dario Faggioli wrote: > I'm spending some time implementing the POSIX real-time SCHED_SPORADIC > scheduling policy on top of the mainline Linux kernel, and here it is > the code in its very first ...

+ Reply to Thread
Results 1 to 3 of 3

Thread: Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups

  1. Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1

    Dario Faggioli wrote:
    > I'm spending some time implementing the POSIX real-time SCHED_SPORADIC
    > scheduling policy on top of the mainline Linux kernel, and here it is
    > the code in its very first version.


    I'm not commenting on the code or usefulness of ht features. I just
    want to point out a problem.

    The authors of that POSIX extension unfortunately decided to extend the
    sched_param structure. If you look at the definition of that structure
    Linux uses you'll see that there is no place for this. I.e., any
    implementation of that feature following the POSIX spec to the letter
    will introduce major headache in the form of binary incompatibility.

    In case the features is useful enough (I actually always thought it
    isn't an have actually proposed to remove it again from POSIX) then I
    would rather prefer to not claim support for this feature in the POSIX
    way. One could still implement it as described. But change the
    interface to not require the sched_param change.

    - --
    ➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.4.9 (GNU/Linux)

    iEYEARECAAYFAkigSHsACgkQ2ijCOnn/RHS23QCfWNJRqnrhgSXGpnNag/nVeKcC
    uwIAn3fUIwku+i+xegBDhfh5yaIW/VCo
    =LCa/
    -----END PGP SIGNATURE-----
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

  2. Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups

    On Mon, 2008-08-11 at 07:11 -0700, Ulrich Drepper wrote:
    > I'm not commenting on the code or usefulness of ht features. I just
    > want to point out a problem.

    Ok...

    > The authors of that POSIX extension unfortunately decided to extend the
    > sched_param structure. If you look at the definition of that structure
    > Linux uses you'll see that there is no place for this. I.e., any
    > implementation of that feature following the POSIX spec to the letter
    > will introduce major headache in the form of binary incompatibility.

    Yeah, I'm aware of that, as you can see in the comments inside the patch
    (has the mail with the patch arrived? It seems no to me :-().

    > In case the features is useful enough (I actually always thought it
    > isn't an have actually proposed to remove it again from POSIX)

    Uao... Thanks for your support! :-P

    > then I
    > would rather prefer to not claim support for this feature in the POSIX
    > way. One could still implement it as described. But change the
    > interface to not require the sched_param change.

    It could be done like this, I agree, for sure.

    I would be sorry if we implemented this but we still miss POSIX
    support... But I can't imagine any other solution that is not going
    cause ABI issues too.

    Anyway, thanks a lot for replying.
    Dario

    --
    <>
    (Raistlin Majere, DragonLance Chronicles -Dragons of Spring Drawning-)
    ----------------------------------------------------------------------
    Dario Faggioli
    GNU/Linux Registered User: #340657
    Web: http://www.linux.it/~raistlin
    Blog: http://blog.linux.it/raistlin
    SIP Account: dario.faggioli@sipproxy.wengo.fr or
    raistlin@ekiga.net
    Jabber Account: dario.faggioli@jabber.org/WengoPhone
    GnuPG Key ID: 4DC83AC4
    GnuPG Key Fingerprint: 2A78 AD5D B9CF A082 0836 08AD 9385 DA04 4DC8 3AC4

    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.4.6 (GNU/Linux)

    iD8DBQBIoEvsk4XaBE3IOsQRAki+AJ0ZiixplijxtLp1ymnVEr B1OCLAbgCfdfgd
    +7OWw/q/DWCfccdFYTbK7MA=
    =g6gV
    -----END PGP SIGNATURE-----


  3. Re: [RFC 0/1][PATCH] POSIX SCHED_SPORADIC implementation for tasks and groups

    On Mon, 2008-08-11 at 07:11 -0700, Ulrich Drepper wrote:
    > -----BEGIN PGP SIGNED MESSAGE-----
    > Hash: SHA1
    >
    > Dario Faggioli wrote:
    > > I'm spending some time implementing the POSIX real-time SCHED_SPORADIC
    > > scheduling policy on top of the mainline Linux kernel, and here it is
    > > the code in its very first version.

    >
    > I'm not commenting on the code or usefulness of ht features. I just
    > want to point out a problem.
    >
    > The authors of that POSIX extension unfortunately decided to extend the
    > sched_param structure. If you look at the definition of that structure
    > Linux uses you'll see that there is no place for this. I.e., any
    > implementation of that feature following the POSIX spec to the letter
    > will introduce major headache in the form of binary incompatibility.
    >
    > In case the features is useful enough (I actually always thought it
    > isn't an have actually proposed to remove it again from POSIX) then I
    > would rather prefer to not claim support for this feature in the POSIX
    > way. One could still implement it as described. But change the
    > interface to not require the sched_param change.


    Whichever way you turn SCHED_SPORADIC or SCHED_EDF etc.. you'll need
    some place to pass along extra data. The single int in sched_param is
    not enough for these policies.

    My suggestion would be to create struct sched_param2 with plenty of
    padding to support future expansion and add
    sys_sched_setscheduler2()/sys_sched_getscheduler2() to deal with this
    new structure.

    I think at least 3 struct timespec fields and a flags field might be
    needed for the most exotic deadline parameters:

    - budget
    - deadline
    - period

    My own take is that SCHED_SPORADIC is a nice excersice in scheduler
    development - but I'm not sure its actually in demand from application
    developers (those of you who actually write RT progs, please holler if
    you care - I'm interested to hear your stories).

    SCHED_EDF is in great demand - and is being worked on - albeit not as
    much as I'd like to, due to me being too busy with other stuff atm :-/

    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

+ Reply to Thread