Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: rump missing cv_has_waiters?



tls%rek.tjls.com@localhost said:
> /Volumes/scratch/tls/newnb/sys/ufs/ffs/ffs_alloc.c:307: undefined
> reference to `cv_has_waiters' 

Since the cv_has_waiters thing doesn't seem to be worth to waste
emulation code on I've helped myself with the appended patch.
I'm not sure whether it is good to pollute the kernel sources
with rump specific conditionals either...

best regards
Matthias





-------------------------------------------------------------------
-------------------------------------------------------------------
Forschungszentrum Juelich GmbH
52425 Juelich

Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzende des Aufsichtsrats: MinDir'in Baerbel Brumme-Bothe
Geschaeftsfuehrung: Prof. Dr. Achim Bachem (Vorsitzender),
Dr. Ulrich Krafft (stellv. Vorsitzender), Prof. Dr. Harald Bolt,
Dr. Sebastian M. Schmidt
-------------------------------------------------------------------
-------------------------------------------------------------------
#
# old_revision [fbbe7c8da7f8d42f3b3758460eeb4e9311827fe9]
#
# patch "sys/ufs/ffs/ffs_alloc.c"
#  from [f48c7226f6338c4a93bb649087800f6d25ac9f9a]
#    to [583f073cc0c25c5aae8acbd4581082db006261a1]
#
============================================================
--- sys/ufs/ffs/ffs_alloc.c     f48c7226f6338c4a93bb649087800f6d25ac9f9a
+++ sys/ufs/ffs/ffs_alloc.c     583f073cc0c25c5aae8acbd4581082db006261a1
@@ -304,7 +304,9 @@ ffs_realloccg(struct inode *ip, daddr_t 
                        allocbuf(bp, nsize, 1);
                        memset((char *)bp->b_data + osize, 0, nsize - osize);
                        mutex_enter(bp->b_objlock);
+#ifndef _RUMPKERNEL
                        KASSERT(!cv_has_waiters(&bp->b_done));
+#endif
                        bp->b_oflags |= BO_DONE;
                        mutex_exit(bp->b_objlock);
                        *bpp = bp;
@@ -387,7 +389,9 @@ ffs_realloccg(struct inode *ip, daddr_t 
                        allocbuf(bp, nsize, 1);
                        memset((char *)bp->b_data + osize, 0, (u_int)nsize - 
osize);
                        mutex_enter(bp->b_objlock);
+#ifndef _RUMPKERNEL
                        KASSERT(!cv_has_waiters(&bp->b_done));
+#endif
                        bp->b_oflags |= BO_DONE;
                        mutex_exit(bp->b_objlock);
                        *bpp = bp;


Home | Main Index | Thread Index | Old Index