FreeBSD Bugzilla – Attachment 68266 Details for
Bug 100403
Fix sysutils/fusefs-kmod build on CURRENT
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
fusefs-kmod-buildfix.patch
fusefs-kmod-buildfix.patch (text/plain), 13.15 KB, created by
amistry
on 2006-07-16 20:00:31 UTC
(
hide
)
Description:
fusefs-kmod-buildfix.patch
Filename:
MIME Type:
Creator:
amistry
Created:
2006-07-16 20:00:31 UTC
Size:
13.15 KB
patch
obsolete
>diff -ruN fusefs-kmod.orig/Makefile fusefs-kmod/Makefile >--- fusefs-kmod.orig/Makefile Sun Jul 16 13:50:35 2006 >+++ fusefs-kmod/Makefile Sun Jul 16 14:29:10 2006 >@@ -7,7 +7,7 @@ > > PORTNAME= fusefs > PORTVERSION= 0.3.0 >-PORTREVISION= 1 >+PORTREVISION= 2 > CATEGORIES= sysutils > MASTER_SITES= http://fuse4bsd.creo.hu/downloads/ \ > http://am-productions.biz/docs/ >diff -ruN fusefs-kmod.orig/files/patch-fuse_module_fmaster.c fusefs-kmod/files/patch-fuse_module_fmaster.c >--- fusefs-kmod.orig/files/patch-fuse_module_fmaster.c Wed Dec 31 19:00:00 1969 >+++ fusefs-kmod/files/patch-fuse_module_fmaster.c Sun Jul 16 14:11:42 2006 >@@ -0,0 +1,29 @@ >+--- fuse_module/fmaster.c Mon Jun 19 22:10:26 2006 +0200 >++++ fuse_module/fmaster.c Mon Jun 19 22:23:08 2006 +0200 >+@@ -506,22 +506,22 @@ fuse_response_prettyprint(enum fuse_opco >+ case FUSE_FSYNCDIR: >+ //pp_buf(fresp); >+ break; >+-#if FUSE_HAS_GETLK >++#ifdef FUSE_HAS_GETLK >+ case FUSE_GETLK: >+ panic("FUSE_GETLK implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_SETLK >++#ifdef FUSE_HAS_SETLK >+ case FUSE_SETLK: >+ panic("FUSE_SETLK implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_SETLKW >++#ifdef FUSE_HAS_SETLKW >+ case FUSE_SETLKW: >+ panic("FUSE_SETLKW implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_ACCESS >++#ifdef FUSE_HAS_ACCESS >+ case FUSE_ACCESS: >+ break; >+ #endif >\ No newline at end of file >diff -ruN fusefs-kmod.orig/files/patch-fuse_module_fuse.c fusefs-kmod/files/patch-fuse_module_fuse.c >--- fusefs-kmod.orig/files/patch-fuse_module_fuse.c Wed Dec 31 19:00:00 1969 >+++ fusefs-kmod/files/patch-fuse_module_fuse.c Sun Jul 16 14:47:00 2006 >@@ -0,0 +1,310 @@ >+--- fuse_module/fuse.c.orig Fri Feb 10 17:31:53 2006 >++++ fuse_module/fuse.c Sun Jul 16 14:48:43 2006 >+@@ -75,7 +75,7 @@ >+ }; >+ >+ >+-#if USE_OLD_CLONEHANDLER_API >++#ifdef USE_OLD_CLONEHANDLER_API >+ static void fusedev_clone(void *arg, char *name, int namelen, struct cdev **dev); >+ #else >+ static void fusedev_clone(void *arg, struct ucred *cred, char *name, int namelen, struct cdev **dev); >+@@ -120,7 +120,7 @@ >+ __static void fuse_insert_message(struct fuse_ticket *tick); >+ __static fuse_handler_t fuse_standard_handler; >+ static fuse_handler_t fuse_fsync_handler; >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static fuse_handler_t fuse_forgetful_handler; >+ #endif >+ >+@@ -852,27 +852,27 @@ >+ case FUSE_FSYNCDIR: >+ err = blen == 0 ? 0 : EINVAL; >+ break; >+-#if FUSE_HAS_GETLK >++#ifdef FUSE_HAS_GETLK >+ case FUSE_GETLK: >+ panic("FUSE_GETLK implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_SETLK >++#ifdef FUSE_HAS_SETLK >+ case FUSE_SETLK: >+ panic("FUSE_SETLK implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_SETLKW >++#ifdef FUSE_HAS_SETLKW >+ case FUSE_SETLKW: >+ panic("FUSE_SETLKW implementor has forgotten to define a response body format check"); >+ break; >+ #endif >+-#if FUSE_HAS_ACCESS >++#ifdef FUSE_HAS_ACCESS >+ case FUSE_ACCESS: >+ err = blen == 0 ? 0 : EINVAL; >+ break; >+ #endif >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ case FUSE_CREATE: >+ err = blen == sizeof(struct fuse_entry_out) + sizeof(struct fuse_open_out) ? 0 : EINVAL; >+ break; >+@@ -881,7 +881,7 @@ >+ panic("fuse opcodes out of sync"); >+ } >+ >+-#if _DEBUG2G >++#ifdef _DEBUG2G >+ if (err) >+ DEBUG2G("op %s (#%d) with body size %d: invalid body size\n", >+ (0 <= opcode && opcode <= fuse_opnames_entries) ? fuse_opnames[opcode] : "???", >+@@ -988,7 +988,7 @@ >+ return (0); >+ } >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static int >+ fuse_forgetful_handler(struct fuse_callback_node *caliban, struct uio *uio) >+ { >+@@ -1242,7 +1242,7 @@ >+ static int >+ fusedev_write(struct cdev *dev, struct uio *uio, int ioflag) >+ { >+-#if _DEBUG_MSGING >++#ifdef _DEBUG_MSGING >+ static int counter=0; >+ #endif >+ struct fuse_out_header *ohead; >+@@ -1415,7 +1415,7 @@ >+ if ((err = fuse_callbn_wait_answer(&fdip->tick->callbn))) { >+ /* Uh-huh, we got interrupted... */ >+ >+-#if ! DONT_TRY_HARD_PREVENT_IO_IN_VAIN >++#ifndef DONT_TRY_HARD_PREVENT_IO_IN_VAIN >+ struct fuse_callback_node *fcallbn; >+ unsigned age; >+ #endif >+@@ -1438,7 +1438,7 @@ >+ age = fdip->tick->age; >+ fuse_callbn_set_answered(&fdip->tick->callbn); >+ mtx_unlock(&fdip->tick->callbn.answer_mtx); >+-#if ! DONT_TRY_HARD_PREVENT_IO_IN_VAIN >++#ifndef DONT_TRY_HARD_PREVENT_IO_IN_VAIN >+ /* >+ * If we are willing to pay with one more locking, we >+ * can save on I/O by getting the device write handler >+@@ -1662,7 +1662,7 @@ >+ /* static vop_pathconf_t fuse_pathconf; */ >+ static vfs_hash_cmp_t fuse_vnode_cmp; >+ static vfs_hash_cmp_t fuse_vnode_bgdrop_cmp; >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static vfs_hash_cmp_t fuse_vnode_fgdrop_cmp; >+ #endif >+ /* static vfs_vget_t fuse_vget; */ >+@@ -1683,7 +1683,7 @@ >+ static vop_lookup_t fuse_lookup; >+ static int iterate_filehandles(struct vnode *vp, struct thread *td, struct ucred *cred, fuse_metrics_t fmetr, void *param); >+ static fuse_metrics_t fuse_standard_metrics; >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static __inline int create_filehandle(struct vnode *vp, struct thread *td, struct ucred *cred, int mode, struct fuse_dispatcher *fdip); >+ #endif >+ static struct fuse_filehandle *get_filehandle(struct vnode *vp, struct thread *td, struct ucred *cred, int mode, struct get_filehandle_param *gefhp); >+@@ -1729,7 +1729,7 @@ >+ >+ static b_strategy_t fuse_bufstrategy; >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static vop_access_t fuse_germ_access; >+ #endif >+ >+@@ -1773,7 +1773,7 @@ >+ .vop_unlock = fuse_unlock, >+ }; >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static struct vop_vector fuse_germ_vnops; >+ #endif >+ >+@@ -2092,7 +2092,7 @@ >+ >+ if (! (fmnt->mntopts & FUSEFS_SECONDARY)) { >+ data->mp = mp; >+-#if ! REALTIME_TRACK_UNPRIVPROCDBG >++#ifndef REALTIME_TRACK_UNPRIVPROCDBG >+ fmnt->mntopts &= ~FUSEFS_UNPRIVPROCDBG; >+ fmnt->mntopts |= get_unprivileged_proc_debug(td) ? FUSEFS_UNPRIVPROCDBG : 0; >+ #endif >+@@ -2380,7 +2380,7 @@ >+ return (0); >+ } >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ /* >+ * Vnode comparison function with which the given vnode always >+ * gets inserted, but got marked invalid upon a clash. Caller >+@@ -2654,7 +2654,7 @@ >+ >+ fuse_filehandle_gc(vp, td, NULL); >+ >+-#if ! DONT_STORE_FS_MAP >++#ifndef DONT_STORE_FS_MAP >+ /* >+ * Dropping vnodes when they are not in use would mean that >+ * the respective inode must be freed on the daemon's side >+@@ -2751,7 +2751,7 @@ >+ int denied; >+ >+ if ((denied = cr_candebug( >+-#if REALTIME_TRACK_UNPRIVPROCDBG >++#ifdef REALTIME_TRACK_UNPRIVPROCDBG >+ get_unprivileged_proc_debug(td), >+ #else >+ fmnt->mntopts & FUSEFS_UNPRIVPROCDBG, >+@@ -2948,7 +2948,7 @@ >+ >+ } else { >+ struct sx *devlock = fdi.slock; >+-#if FUSE_HAS_ACCESS >++#ifdef FUSE_HAS_ACCESS >+ struct fuse_access_in *fai; >+ >+ if (! (facp->facc_flags & FACCESS_DO_ACCESS)) >+@@ -3056,7 +3056,7 @@ >+ >+ bzero(&facp, sizeof(facp)); >+ if ( >+-#if NO_EARLY_PERM_CHECK_HACK >++#ifdef NO_EARLY_PERM_CHECK_HACK >+ 1 >+ #else >+ dvp->v_vflag & VV_ROOT >+@@ -3281,8 +3281,12 @@ >+ DEBUG("we peacefully found that file\n"); >+ >+ if (flags & ISDOTDOT) { >+- vn_lock(pdp, LK_EXCLUSIVE | LK_RETRY, td); >++ VOP_UNLOCK(dvp, 0, td); >++ err = vn_lock(pdp, cnp->cn_lkflags, td); >+ VREF(pdp); >++ vn_lock(dvp, LK_EXCLUSIVE | LK_RETRY, td); >++ if (err) >++ goto out; >+ *vpp = pdp; >+ } else if (nid == VTOI(dvp)) { >+ VREF(dvp); /* We want ourself, ie "." */ >+@@ -3347,7 +3351,7 @@ >+ if (islastcn && flags & ISOPEN) >+ ((struct fuse_vnode_data *)(*vpp)->v_data)->flags |= FVP_ACCESS_NOOP; >+ >+-#if ! NO_EARLY_PERM_CHECK_HACK >++#ifndef NO_EARLY_PERM_CHECK_HACK >+ if (! islastcn) { >+ /* We have the attributes of the next item >+ * *now*, and it's a fact, and we do not have >+@@ -3486,7 +3490,7 @@ >+ return (0); >+ } >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static __inline int >+ create_filehandle(struct vnode *vp, struct thread *td, struct ucred *cred, >+ int mode, struct fuse_dispatcher *fdip) >+@@ -3643,7 +3647,7 @@ >+ * the vnode... if the vnode is a germ, it will be tried to be initialized >+ * via a dedicated method, but from that on we go on as usual.) >+ */ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ if (vp->v_op == &fuse_germ_vnops) { >+ KASSERT(gefhp, ("create_filehandle called without get_filehandle_param")); >+ gone_create = 1; >+@@ -3709,7 +3713,7 @@ >+ if ((err = fdisp_wait_answ(&fdi))) >+ goto out; >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ setup_filehandle: >+ #endif >+ foo = fdi.answ; >+@@ -4184,7 +4188,7 @@ >+ #define BSD_FUSE_PAGENO_BOUND MIN(FUSE_MAX_PAGES_PER_REQ, MAXBSIZE / PAGE_SIZE) >+ >+ bcount = MIN(MAXBSIZE, biosize * BSD_FUSE_PAGENO_BOUND); >+-#if BIOREAD_CONSIDER_FILE_SIZE >++#ifdef BIOREAD_CONSIDER_FILE_SIZE >+ if (vp->v_type != VDIR) { >+ /* >+ * for directories we can't predict the size, in fact >+@@ -4493,7 +4497,7 @@ >+ break; >+ } >+ >+-#if ZERO_PAD_INCOMPLETE_BUFS >++#ifdef ZERO_PAD_INCOMPLETE_BUFS >+ if (isbzero(buf), FUSE_NAME_OFFSET) { >+ err = -1; >+ break; >+@@ -4658,7 +4662,7 @@ >+ struct vnode *dvp = ap->a_dvp; >+ struct vnode **vpp = ap->a_vpp; >+ struct vattr *vap = ap->a_vap; >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ struct fuse_dispatcher fdi; >+ struct fuse_vnode_data *fvdat; >+ int err; >+@@ -4949,7 +4953,7 @@ >+ if (err) >+ goto out; >+ >+-#if ! DONT_DO_CHECKPATH >++#ifndef DONT_DO_CHECKPATH >+ if (doingdirectory && fdvp != tdvp) { >+ /* >+ * Check for pathname conflict. >+@@ -5741,7 +5745,7 @@ >+ chunksize, (long long unsigned)fri->offset, respsize); >+ >+ if (respsize < chunksize) { >+-#if ZERO_PAD_INCOMPLETE_BUFS >++#ifdef ZERO_PAD_INCOMPLETE_BUFS >+ /* >+ * "if we don't get enough data, just fill the >+ * rest with zeros." >+@@ -5888,7 +5892,7 @@ >+ "vp=%p, rc=%d", bp, vp, rc)); >+ } >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ static int >+ fuse_germ_access(struct vop_access_args *ap) >+ { >+@@ -5908,7 +5912,7 @@ >+ >+ /* Modeled after tunclone() of net/if_tun.c >+ */ >+-#if USE_OLD_CLONEHANDLER_API >++#ifdef USE_OLD_CLONEHANDLER_API >+ static void >+ fusedev_clone(void *arg, char *name, int namelen, struct cdev **dev) >+ #else >+@@ -6019,7 +6023,7 @@ >+ fuse_fileops.fo_close = fuse_close_f; >+ fuse_fileops.fo_flags = DFLAG_PASSABLE | DFLAG_SEEKABLE; >+ >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ memcpy(&fuse_germ_vnops, &dead_vnodeops, sizeof(struct vop_vector)); >+ fuse_germ_vnops.vop_access = fuse_germ_access; >+ fuse_germ_vnops.vop_open = fuse_open; >diff -ruN fusefs-kmod.orig/files/patch-fuse_module_fuse.h fusefs-kmod/files/patch-fuse_module_fuse.h >--- fusefs-kmod.orig/files/patch-fuse_module_fuse.h Wed Dec 31 19:00:00 1969 >+++ fusefs-kmod/files/patch-fuse_module_fuse.h Sun Jul 16 14:47:00 2006 >@@ -0,0 +1,112 @@ >+--- fuse_module/fuse.h.orig Fri Feb 10 17:31:53 2006 >++++ fuse_module/fuse.h Sun Jul 16 14:43:20 2006 >+@@ -8,7 +8,7 @@ >+ >+ #ifndef USE_OLD_CLONEHANDLER_API >+ #if __FreeBSD_version < 600034 || ( __FreeBSD_version >= 700000 && __FreeBSD_version < 700002 ) >+-#define USE_OLD_CLONEHANDLER_API 1 >++#define USE_OLD_CLONEHANDLER_API >+ #endif >+ #endif >+ >+@@ -19,10 +19,10 @@ >+ */ >+ #if FUSE_KERNELABI_GEQ(7, 3) >+ #ifndef FUSE_HAS_ACCESS >+-#define FUSE_HAS_ACCESS 1 >++#define FUSE_HAS_ACCESS >+ #endif >+ #ifndef FUSE_HAS_CREATE >+-#define FUSE_HAS_CREATE 1 >++#define FUSE_HAS_CREATE >+ #endif >+ #endif >+ >+@@ -75,7 +75,7 @@ >+ size_t len; /* To keep track of size of the data pushed into base, =< len, of course */ >+ }; >+ >+-#if ! FUSE_AUX >++#ifndef FUSE_AUX >+ #ifndef FUSE_MAX_STORED_FREE_TICKETS >+ #define FUSE_MAX_STORED_FREE_TICKETS 0 >+ #endif >+@@ -251,7 +251,7 @@ >+ int flags; >+ LIST_HEAD(, fuse_filehandle) fh_head; >+ int fh_counter; >+-#if FUSE_HAS_CREATE >++#ifdef FUSE_HAS_CREATE >+ struct componentname *germcnp; >+ #endif >+ }; >+@@ -260,6 +260,9 @@ >+ >+ /* Debug related stuff */ >+ >++#ifndef DEBUGTOLOG >++#define DEBUGTOLOG 0 >++#endif >+ #if DEBUGTOLOG >+ #define dprintf(args ...) log(LOG_DEBUG, args) >+ #else >+@@ -267,6 +270,9 @@ >+ #endif >+ >+ #define DEBLABEL "[fuse-debug] " >++#ifndef _DEBUG >++#define _DEBUG 0 >++#endif >+ #if _DEBUG >+ #ifndef _DEBUG2G >+ #define _DEBUG2G 1 >+@@ -280,6 +286,9 @@ >+ #define DEBUG(args ...) >+ #endif >+ >++#ifndef _DEBUG2G >++#define _DEBUG2G 0 >++#endif >+ #if _DEBUG2G >+ #ifndef _DEBUG3G >+ #define _DEBUG3G 1 >+@@ -290,6 +299,9 @@ >+ #define DEBUG2G(args ...) >+ #endif >+ >++#ifndef _DEBUG3G >++#define _DEBUG3G 0 >++#endif >+ #if _DEBUG3G >+ #define DEBUG3G(args, ...) \ >+ printf(DEBLABEL "%s:%d: " args, __func__, __LINE__, ## __VA_ARGS__) >+@@ -297,13 +309,19 @@ >+ #define DEBUG3G(args ...) >+ #endif >+ >++#ifndef FMASTER >++#define FMASTER 0 >++#endif >+ #if FMASTER >+ #ifndef _DEBUG_MSGING >+ #define _DEBUG_MSGING 1 >+ #endif >+ #endif >+ >+-#if _DEBUG_MSGING >++#ifndef _DEBUG_MSG >++#define _DEBUG_MSG 0 >++#endif >++#ifdef _DEBUG_MSGING >+ #define fuprintf(args...) \ >+ uprintf("[kern] " args) >+ #else >+@@ -319,7 +337,7 @@ >+ void fprettyprint(struct fuse_iov *fiov, size_t dlen); >+ #endif >+ >+-#if IGNORE_INLINE >++#ifdef IGNORE_INLINE >+ #define __inline >+ #endif >+
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 100403
: 68266