On Sun, 07 Oct 2012 10:16:40 -0600 Ian Lepore <freebsd_at_damnhippie.dyndns.org> wrote: > On Sun, 2012-10-07 at 17:53 +0200, Luigi Rizzo wrote: > > Access through sysctl is incredibly easy from both userspace and > > from a C application, because all the work is done in the kernel > > side, whereas other mechanisms (ioctl, i'd rather leave kvm apart > > as we really don't want that!) require the definition of a specific > > API (ioctl, structs) _and_ some amount of wrapping code in > > userspace. > > > > cheers > > luigi > > A potential problem with sysctl is its "one thing at a time" nature. > When you pack up a bunch of related data into a structure and hand it > off to an implementation, that implementation can pretty easily make > sure that all the data related to the config request is sane. If you > have to make a series of sysctl calls to achieve some complex config > task, what happens when you're 2/3 of the way through the series and a > call fails? Who backs out the partial config that got accomplished? > > If you go too far down this path you end up with something that looks > a lot like the unmitigated mess which is the SNMP control API. > > -- Ian I agree with Ian here. As messy as ioctl+structs are from a user standpoint, they're the easiest way to guarantee atomic configuration changes. - JustinReceived on Sun Oct 07 2012 - 15:05:25 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:31 UTC