On Tue, Jul 15, 2014 at 10:47:04PM -0400, Jincheng Miao wrote:
----- Original Message -----I'm not sure errno is set when using our virMutexInit(). Most of the code uses virReportError instead, I suggest using that. This shouldActually, the implement of virMutexInit() already set errno when failure: int virMutexInit(virMutexPtr m) { int ret; pthread_mutexattr_t attr; pthread_mutexattr_init(&attr); pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_NORMAL); ret = pthread_mutex_init(&m->lock, &attr); pthread_mutexattr_destroy(&attr); if (ret != 0) { errno = ret; return -1; } return 0; }
Oh, sorry; /me facepalms... You're right then, but if you want to change it everywhere in the code (which I don't require), it would be better to create a virMutexInitInternal that takes 2 parameters; the second being a bool that controls error reporting and virMutexInit and virMutexInitQuiet would be two macros. Similarly to virVasprintf for example.
be changed everywhere in the code. Rough idea of the places could beI think it worthy of adding after all virMutexInit, I will include it in my V2 patchset.gotten by the following command: git grep -nA5 virMutexInit | grep SystemError but as I said, only rough idea :) Martin
Attachment:
signature.asc
Description: Digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list