NetBSD hammer with fuse and hammerread

Daniel Lorch daniel.lorch at epfl.ch
Thu Apr 16 09:26:21 PDT 2009


Hello,

> Prompted by Daniel's FUSE work, I tried it on NetBSD/amd64 5.0_RC3.

That's great!

> Daniel: please add a license to your new source files. Please consider 
> using the standard DragonFly Project license (see hammer_disk.h and
> hammerread.c for same example).

I guess for the FUSE code I'm free to choose, but what's the best pick
for code that might eventually go into the Linux kernel tree?

And then there's the whole story about coding standards. Can code
written according to BSD style co-exist in the Linux kernel?

Just tell me what's most convenient for you and I'll stick to it. I
neither have an opinion on coding style nor on licensing issues.

> Also note that the bsd_compat.h is not "BSD" specific. As DT_DBF and 
> S_IFDB appear to be DragonFly specific (as for __unused, I don't know, but 
> thought was some gcc attribute).

I'll rename that to dflybsd_compat.h. Maybe "compat" was a misnomer. The
idea was to have a "wrapper" and change as little as possible in the
original source code.

> Also when building fusehammer I get this warning:
> 	hammerread.c:839: warning: 'hclose' defined but not used

There should be a hclose(&hfs); somewhere at the end of main() in the
original hammerread.c. As for FUSE, hclose() should probably be hooked
somewhere into the unmount call (atexit() should do as well).

> Now I see that version of hammerread.c has lots of unused code via #if 0

I wanted to change as little as possible in the original code, so one
could do a `diff' and quickly spot the differences. Therefore I didn't
remove anything, but just commented it out.

> And do you have your porting work available via some revision control 
> system?

I'm using Time Machine :) SCMs get in my way, but I'll use one if I have to.

Thanks for the feedback.

Cheers,
Daniel





More information about the Hammer mailing list