tbutc-wrong-lp-getrwindex-20080428
authorHans-Werner Paulsen <hans@MPA-Garching.MPG.DE>
Mon, 28 Apr 2008 17:14:55 +0000 (17:14 +0000)
committerDerrick Brashear <shadow@dementia.org>
Mon, 28 Apr 2008 17:14:55 +0000 (17:14 +0000)
LICENSE IPL10
FIXES 96575

The pthread butc crashes with SIGSEGV, when I restore to a volume
which already exists. This does happen with OpenAFS 1.4.7pre4 on
i386_linux26.
Looking into the code I think butc is using the wrong function
Lp_GetRwIndex (at volser/vsprocs.c:4394). It uses the one in the
library lib/libvosadmin.a, but should use the function defined
in volser/lockprocs.c.

src/tbutc/Makefile.in

index 70dda34..e3a4d50 100644 (file)
@@ -28,7 +28,7 @@ VOLSER  = ${srcdir}/../volser
 BUCOORDOBJS=ubik_db_if.o ../bucoord/volstub.o ../bucoord/dlq.o \
            status.o ../bucoord/bucoord_errs.o
 
-VOLSEROBJS=vsprocs.o vsutils.o
+VOLSEROBJS=vsprocs.o vsutils.o lockprocs.o
 VOLSERLIBS=${TOP_LIBDIR}/libvosadmin.a ${TOP_LIBDIR}/libafsadminutil.a
 
 LWPOBJS     =lock.o
@@ -119,6 +119,9 @@ vsutils.o: ${VOLSER}/vsutils.c
 vsprocs.o: ${VOLSER}/vsprocs.c
        ${CC} ${CFLAGS} -c ${VOLSER}/vsprocs.c
 
+lockprocs.o: ${VOLSER}/lockprocs.c
+       ${CC} ${CFLAGS} -c ${VOLSER}/lockprocs.c
+
 lock.o: ${LWP}/lock.c
        ${CC} ${CFLAGS} -c ${LWP}/lock.c