[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] libxen-3.0 (libxc rewrite)
On Tue, Mar 22, 2005 at 09:04:47AM -0600, Anthony Liguori wrote: > Christian Limpach wrote: > >On Mon, 21 Mar 2005 15:25:09 -0600, Anthony Liguori <aliguori@xxxxxxxxxx> > >wrote: > >>o Provide consistent error semantics for all functions (-errno is > >>returned on error). > >Why -errno? What's wrong with regular errno, like used everywhere > >else in userspace? > > > errno's a global variable and it's way to easy to lose it's value. For > instance: > > if (read(fd, buffer, sizeof(buffer)) == -1) { > close(fd); > perror("read"); > } > > Doesn't do what you'd expect. It gets particularly hairy when you're > not sure what functions modify errno and which functions don't. I think it does what I expect. And it seems to work for a lot of libraries just fine. By not using the global errno, you're preventing people from using perror, warn, err and the likes. Also some of the interfaces in your library are slightly awkward because you're wasting the return parameter to return the failure reason. Even if we don't use the global errno, I'm still wondering why you're returning -errno and not errno? christian ------------------------------------------------------- This SF.net email is sponsored by: 2005 Windows Mobile Application Contest Submit applications for Windows Mobile(tm)-based Pocket PCs or Smartphones for the chance to win $25,000 and application distribution. Enter today at http://ads.osdn.com/?ad_id=6882&alloc_id=15148&op=click _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.sourceforge.net/lists/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |