Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez

On Tue, 17 Aug 1999, Wilfredo Sanchez wrote:

   A group of us at Apple are trying to figure out how to handle  
 situations where a filesystem with "foreign" user ID's are present.   
 The basic problem is that the user experience using Unix semantics  
 are not really pleasant.  I think some examples would help:

I was thinking about this the other day, while mousting a series of floppy
disks, and it seems to me that what you're looking for, at least for
removable media, is a sort of single-user UFS that says "Joe Schmoe owns
this file system." Assuming that neither you nor Joe have accounts on each
other's machines:

0) Non-root users should be able to mount disks.  This really goes without
saying for desktop systems.

1) You mount_suufs his disk with some sort of "foreign-user" option, and
the system chooses an unused, per device UID and GID, and all the
directories are mapped to that ownership.

2) You copy the files to a world wrx directory, and they all automagically
become foreign ownership.

3) Joe goes to his computer and mounts his disk, and voila, he owns
everything (it's his filesystem after all).

This handles the simple case of just shuffling files around.  If you
wanted more elaborate collaborations, you'd really have to give each other
accounts.  You could monkey around with keeping passwd files and such on
the medium and umapping, but you couldn't copy files from the Zip to the
local FS without future-user-clash.

This also affords Joe more than your normal level of security, assuming he
trusts root on all the systems involved.

Marc.

--
Marc Ramirez - OwnerGreat Big Throbbing Brains
[EMAIL PROTECTED]  http://www.gbtb.com
Our brains throb, so yours won't have to!



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: cvs commit: src/bin/test test.c

1999-08-18 Thread Sheldon Hearn


[Hi-jacked out of cvs-committers  cvs-all]

On Tue, 17 Aug 1999 17:18:53 MST, Brian Feldman wrote:

 green   1999/08/17 17:18:53 PDT
 
   Modified files:
 bin/test test.c 
   Log:
   The new test(1) did not use access() correctly. I don't know why, since
   supposedly it's ksh-derived, and it's not broken in pdksh. I've added
   a test for test running as root: if testing for -x, the file must be
   mode  0111 to get "success", rather than just existant.
   
   Reviewed by:chris

What were you actually trying to fix, here?  I didn't see any discussion
of this on hackers, current or bugs, nor in response to my initial
commit message.

Ciao,
Sheldon.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Ignatios Souvatzis

On Wed, Aug 18, 1999 at 05:00:48AM -0400, Marc Ramirez wrote:
 
 I was thinking about this the other day, while mousting a series of floppy
 disks, and it seems to me that what you're looking for, at least for
 removable media, is a sort of single-user UFS that says "Joe Schmoe owns
 this file system."

our(*) msdos and ados filesystems (at least) do (sort of) this.

Regards,
-is

*) where we = NetBSD


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Alban Hertroys

On 18 Aug, Marc Ramirez wrote:

 Oh!  I was under the impression that it just didn't work, even with
 correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
 with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
 time!
 
 Marc.

No miracle, the mount command has uid 0 hardcoded in the source where
you are checked if you are allowed to use the mount command. 

I've been thinking of a neat way to re-organize that code myself for
some time now, and thought I had come up with a solution (It's the
reason I subscribed to this list in the first place).

With the current discussion, I figure it has some major shortcomings. It
adds some things too, though, like the permissions to audio devices,
etc.

Anyway, I wrote a "paper" about it that I can post here if anybody is
interested. In that case, which format s liked best: plain text, TeX or
postscript? I assume the first.

-- 
Alban Hertroys.
http://wit401310.student.utwente.nl
==
If there is a here-after,
then there are much more people dead than alive.
Even that much more that the number of living people
is insignificant in comparison to the dead ones.
Thus it is safe to say that we don't exist.



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: lpd security check for changed-file vs NFS

1999-08-18 Thread David Scheidt

On Tue, 17 Aug 1999, Garance A Drosihn wrote:

 At 6:37 PM -0700 8/17/99, Matthew Dillon wrote:
 If you removed the stat test, I would simply get rid of the -s
 option entirely - require that all files be queued to the print
 spool.
 
 The administration would kill me.  I would prefer to avoid that.
 
 (note that the check isn't completely removed, it's "only" nullified
 for NFS-mounted files.  We use AFS for most things here, so the vast

Couldn't you turn it off only for NFS mounted files?  

David scheidt


 
 Any advice on how to kick AIX so the st_dev+st_ino check will work
 right is also welcome.  It baffles me why AIX does things the way it
 does.  It kinda looks like the values it uses are pointers to some

The joke about AIX is that it was created by aliens who were given the 
UNIX documentation, but no example system.  I have seen very little that
suggests this to be untrue.  



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



[Fwd: First FreeMWare release!]

1999-08-18 Thread Darren WIebe

Hello:

I thought that some of you might be interested in this.  If this message
should not have been posted to this list please let me know.

Darren Wiebe
[EMAIL PROTECTED]


Hey folks,

It's been awhile.  Sorry, I've been busy working on other
fronts, but I did have time to put together a first go
at the virtualization framework we need for FreeMWare.

  ftp://ftp.freemware.org/pub/freemware/fmw-990817b.tar.gz

Which if you're having problems, is really just:

  ftp://bochs.com/pub/freemware/fmw-990817b.tar.gz

Attached is the "fmw-990817b.README" that goes along with it.

-Kevin

This is the beginnings to the virtualization framework that we
need for FreeMWare.  I have compiled it and run it on:

  Linux 2.0.36   (came with Red Hat 5.2)
  Linux 2.2.5-15 (came with Red Hat 6.0)

I've made an attempt to keep things modularized in
respect to the host OS.  Anything OS specific should
be put in "kernel/host-xyz.c" or "include/host-xyz.h".

This code is extremely experimental, and will likely
result in a system crash, and who knows what other
ill effects.  Don't run it on a system with any
important data on it, and make liberal user of
the sync command!  Expect to have to use the power
button.

We have to clean up the ioctl interface, using
macros instead of passing raw numbers I pulled out
of a hat, etc, etc.  This was my first Linux kernel
driver, so don't assume I did anything correctly. :^)

-Kevin



Directions for install etc.
---

Go into the user directory and type make.

  user cd user
  user make

Go into the kernel directory and type make.

  user cd ../kernel
  user make

Make the device node for freemware, as root user:

  root mknod /dev/freemware0 c 63 0

Fire up the kernel module:

  root insmod fmw.o

As a regular user, fire up the user program:

  user cd ../kernel
  user ./user # defaults to 1 iteration
 -or
  user ./user 10  # any number of iterations here

Whenever you recompile the kernel stuff, or want to
get rid of the kernel module, remove the old
kernel module first.  As root:

  root rmmod fmw


Each time the host switches to the monitor/guest
environment and runs that context.  Normally, execution
will continue in that context until a hardware interrupt
occurs or other exception.  The monitor interrupt handler
switches back to the host context to handle the interrupt.
The monitor/guest context will not resume execution until
the next ioctl() call from the user program.

NOTE:
  By default, I have a macro called TEST_MODE set to 1,
  in kernel/monitor.c.  In this mode, rather than waiting until
  an interrupt hits, control will be passed immediately back
  to the the host.  This is to test that the switching back/forth
  between host/monitor+guest works, without interrupts.

  I have not yet got interrupts redirection working properly.
  If you set TEST_MODE to 0 and recompile, an interrupt seems to
  cause everything to switch back to the host context, but
  then the system hangs after a short period of time,
  or causes a kernel oops.  I have not tracked this down
  yet.  It does register in /proc/freemware, that a redirection
  of an IRQ0 occurred.  Something is getting screwed up with
  interrupts in the kernel perhaps, after the software interrupt
  call to invoke the host kernel interrupt handler for the
  hardware interrupt we received while in guest context.

  Any ideas on what the problem is?




Re: Need some advice regarding portable user IDs

1999-08-18 Thread Michael C. Richardson


 "Wilfredo" == Wilfredo Sanchez [EMAIL PROTECTED] writes:
Wilfredo   I think the desired behaviour would be that since this is  
Wilfredo effectively now Joe's zip disk, he should be able to do as he  
Wilfredo pleases.  One proposal might be to give the console user the  
Wilfredo equivalent of root's priveledges on any removeable media he inserts  

  Right now, with MSDOS floppies, with no userids, the user owning the
mount point gets his userid applied to the entire disk. This allows me to
mount my floppies, etc. on mount points that I own, and I own all
the resulting files. I think you want the same thing as an option for 
UFS mounts.

Wilfredo Presumably the console user is the one fiddling with the external  
Wilfredo media.

  I don't think this is entirely true, and isn't a useful or enforceable
restriction. 

Wilfredo   As another example, a similar situation often comes up on the net  
Wilfredo with tar files containing UIDs and GIDs other than zero.

  Only with SYSV chown semantics that allow non-root to make files not
owned by them.

Wilfredo   So perhaps there needs to be a way to mark a drive as local  
Wilfredo (perhaps with a host ID of some sort?) and noticing when a volume is  
Wilfredo "foreign" that you need to do something special.  Certainly you might  
Wilfredo want to ignore setuid bits, for starters.  This could simply be  
Wilfredo something like fstab, which lists the local drives, and everything  
Wilfredo else isn't considered local.

  This is solved by having the "nouid" or somesuch thing add to /etc/fstab
by the admin who knows which ones should be trusted. Linux provides "user"
to get the behaviour that we get for free.

Wilfredo   Has anyone dived into this area already and have some experience  
Wilfredo with it?  It's confusing me pretty good.

  See what ATT did with RFS. This may be a negative example (i.e. don't do
this).

   :!mcr!:|  Cow#1: Are you worried about getting Mad Cow Disease?
   Michael Richardson |  Cow#2: No. I'm a duck.
 Home: A 
HREF="http://www.sandelman.ottawa.on.ca/People/Michael_Richardson/Bio.html"[EMAIL PROTECTED]/A.
 PGP key available.




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



async v. sync v. default mode on ufs

1999-08-18 Thread Larry Lile


It was pointed out to me by a co-worker that FreeBSD has actually
three modes of operation for mounting ufs filesystems.  Could someone
please explain to me, and him, the differences between the three.

Also does anyone knows how these compare to sync and async on Linux?

Just a btw, you seem to be able to set sync and async on a filesystem
at the same time.  What gives?

dlane# mount -u -o sync,async,noatime /var dlane-printer# mount
/dev/wd0s1a on / (local, noatime, synchronous, writes: sync 405 async 23)
/dev/wd0s1e on /usr (local, noatime, synchronous, writes: sync 118365 
async 83882) 
/dev/wd0s1f on /var (asynchronous, local, noatime, synchronous, writes: 
sync 93 async 216) procfs on /proc (local)
dlane#

/var looks questionable...

I would never try that on purpose, but it just kinda happened, and when I 
looked at it I though "wow that's broken"!

Larry Lile
[EMAIL PROTECTED]



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Onstream?

1999-08-18 Thread Matthew Jacob



 In message [EMAIL PROTECTED] Christopher Masto writes:
 : Do they still not allow you to release the specs?  How is the code
 : going to become part of FreeBSD if they won't allow its release?
 
 I didn't sign an NDA to get my copy of the spec or the hardware...

Neither did I. But I was requested by Jim Jonez of Onstream to not release
the specs.

 
 I also don't have time to devote to the onstream IDE project.  I'm
 looking for someone with the kernel skills and track record to take
 over for me.

I thought Soren was doing it...




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez

On Wed, 18 Aug 1999, David Malone wrote:

 On Wed, Aug 18, 1999 at 07:39:11AM -0400, Marc Ramirez wrote:
  Oh!  I was under the impression that it just didn't work, even with
  correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
  with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
  time!
 
 You have to turn it on with a sysctl: "sysctl -w vfs.usermount=1" I
 think.

So it is.

Thanks.

Marc.

--
Marc Ramirez - OwnerGreat Big Throbbing Brains
[EMAIL PROTECTED]  http://www.gbtb.com
Our brains throb, so yours won't have to!



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Josef Karthauser

On Wed, Aug 18, 1999 at 09:16:29AM -0500, Chris Dillon wrote:
 On Wed, 18 Aug 1999, Mark Huizer wrote:
 
  Hi there,
  
  I had a look recently at the code for one of the kernel modules that VMWare
  requires (driver-only.tar), and it looks like something that should be
  portable to FreeBSD, although there is some messy stuff in it (assembly
  that seems to be using Linux specific stuff, brrr..) But anyway: it
  looks feasable.
  
  Is anyone already working on this, or are some people interested in
  helping with this?
  
  As far as I can see, the linux emulation is good enough to run the
  vmware program, "all" you need to do is implement /dev/vmmon and
  /dev/vmnet, given the fact that the code is written really unportable,
  so there is some rewriting to be done. Then with the KLD's
  vmmon,vmnet and linux you should be able to run vmware.
 
 WooHoo!  Well, I can't celebrate quite yet, but I'll definately be
 buying a copy of VMWare if anyone gets this to work (WAY above my
 head, so no help from me, sorry).  More than likely, many people other
 than myself would also buy a copy of VMWare for Linux just to run
 under FreeBSD, so maybe you can convince VMWare, Inc. to give you or
 whoever else decides to tackle this some monetary compensation?  It
 would also help to bring us a step closer to a native FreeBSD version
 of VMWare, since some (most?) of the work would already be done for
 them (the porting of vmmon and vmnet).

We will _definitely_ buy VMWare if we can run it on a FreeBSD host
system - I believe that I've told them so in the past.

Joe
-- 
Josef KarthauserFreeBSD: How many times have you booted today?
Technical Manager   Viagra for your server (http://www.uk.freebsd.org)
Pavilion Internet plc.  [[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: RE: Need some advice regarding portable user IDs

1999-08-18 Thread Wilfredo Sanchez

|   when new media is available and it will try to mount it.  The  
present
|   behaviour in Mac OS X Server is that everything mounted this  
way is
|   trusted, though the Finder should be requesting nosetuid; I should   
|   check that.  It's also possible that the kernel will number  
drives in
|   a different order (eg. /dev/sd0a this boot might be /dev/sd1a next   
|   boot), particularly if you are shuffling drives around. (Remember   
|   that hot-swap complicates this.)  So a string like "/dev/sd0a" in   
|   fstab is fragile, and it works out better if we keep that  
information
|   on the mounted media rather than on the root volume.
|
| What happens with conflicting names?

  Append "_1", "_2", etc.

-Fred


--
   Wilfredo Sanchez, [EMAIL PROTECTED]
Apple Computer, Inc., Core Operating Systems / BSD
  Technical Lead, Darwin Project
   1 Infinite Loop, 302-4K, Cupertino, CA 95014



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: OpenLDAP tests?

1999-08-18 Thread Jaye Mathisen


Found it.

This let the tests run fine for me.

===
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/daemon.c,v
retrieving revision 1.14.2.7.2.8
retrieving revision 1.14.2.7.2.9
diff -u -r1.14.2.7.2.8 -r1.14.2.7.2.9
--- servers/slapd/daemon.c  1999/03/02 18:30:05 1.14.2.7.2.8
+++ servers/slapd/daemon.c  1999/07/20 05:10:35 1.14.2.7.2.9
@@ -390,7 +390,6 @@
 void
 slap_set_shutdown( int sig )
 {
-   Debug( LDAP_DEBUG_ANY, "slapd got shutdown signal %d\n", sig, 0, 0
);
slapd_shutdown = 1;
ldap_pvt_thread_kill( listener_tid, LDAP_SIGUSR1 );
 
@@ -401,8 +400,6 @@
 void
 slap_do_nothing( int sig )
 {
-   Debug( LDAP_DEBUG_TRACE, "slapd got do_nothing signal %d\n", sig,
0, 0 );
-
/* reinstall self */
(void) SIGNAL( sig, slap_do_nothing );
 }







On Wed, 18 Aug 1999, Steven Ames wrote:

 Thanks! I'll check the site (but would appreciate your sending it to me
 also).
 
 -Steve
 
 On Tue, 17 Aug 1999, Jaye Mathisen wrote:
 
  
  There is a patch that fixes this, I found it, and submitted a bug report
  on their web page.
  
  I don't have it handy, but if you go to www.openldap.org and to their
  faq-o-matic, and it should be in there.
  
  I'll see if I can find it and send it to you in the mean time.
  
  On Tue, 17 Aug 1999, Steven Ames wrote:
  
   
   I've got a project at work where using LDAP would make my life
   much simpler. So... on my home PC (running FBSD 4.0-CURRENT 8.2.99)
   I installed openldap from the ports collection (V1.2.3...ports cvsuped
   about an hour ago from cvsup5.freebsd.org).
   
   I cd into the test area /usr/ports/work/ldap/tests and type 'make'.
   Looking good... until... on test0003-search it stops. It just holds.
   My CPU is up to 99% and its chewed up 18 minutes of CPU before I hit
   Ctrl-C and stopped it. I did a 'make clean' moved scripts/test0003-seach
   to scripts/test0009-search (so it would run last) and tried again.
   Same results on test0004-modify. *sigh*
   
   Do the tests just not run? I didn't dare to just go ahead and use it
   as I'm not familiar enough with LDAP to judge if a failure is my fault
   or a system problem. I'd feel a lot safer if the tests all passed so that
   if anything goes wrong from that point I can call it user error.
   
   Anyone?
   
   -Steve
   
   
   To Unsubscribe: send mail to [EMAIL PROTECTED]
   with "unsubscribe freebsd-hackers" in the body of the message
   
  
 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp

In message [EMAIL PROTECTED], Terry Lambert writes:
   I'm not familiar with the VFS_default stuff. All the vop_default_desc
   routines in NetBSD point to error routines.
  
  In FreeBSD, they now point to default routines that are *not* error
  routines.  This is the problem.  I admit the change was very well
  intentioned, since it made the code a hell of a lot more readable,
  but choosing between readable and additional function, I take function
  over form (I think the way I would have "fixed" the readability is by
  making the operations that result in the descriptor set for a mounted
  FS instance be both discrete, and named for their specific function).
 
 As I recall most of FBSD's default routines are also error routines, if
 the exceptions were a problem it would would be trivial to fix.

You would have to de-collapse several VOP lists that have been
pre-collapsed.

You are talking gibberish here.  Please show code where this is
a problem.

--
Poul-Henning Kamp FreeBSD coreteam member
[EMAIL PROTECTED]   "Real hackers run -current on their laptop."
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp

In message [EMAIL PROTECTED], Bill 
Studenmund writes:

Whew! That's reasuring. I agree there are things which need fixing. It'd
be nice if both NetBSD and FreeBSD could fix things in the same way.

Well, that still remains to be seen...

The use of the "vfs_default" to make unimplemented VOP's
fall through to code which implements function, while well
intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

If I understood the issue, it is that the leaf fs's (the bottom ones)
would use a default routine for non-error functionality. I think Terry's
point (which I agree with) was that a leaf fs's default routine should
only return errors.

I beg to differ.  It is far more likely, in my mind, that you will
want to handle a currently existing, unimplemented VOP than add a
new one.  Using the default for all unimplemented VOPs makes this
possible, using the same logic which makes adding a VOP possible.

Go back and review the diffs from when I did this, and my other
argument why this is a good idea should be obvious.

I doubt we need more than 64 bit times. 2^63 seconds works out to
292,279,025,208 years, or 292 (american) billion years. Current theories
put the age of the universe at I think 12 to 16 billion years. So 64-bit
signed times in seconds will cover from before the big bang to way past
any time we'll be caring about. :-)

But we cannot do time in seconds resolution, we need to resolve at least
the cpu clock frequency, which right now is approaching 1GHz (30bit!)

--
Poul-Henning Kamp FreeBSD coreteam member
[EMAIL PROTECTED]   "Real hackers run -current on their laptop."
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Nate Williams

  Both struct timespec and struct timeval are major mistakes, they
  make arithmetic on timestamps an expensive operation.  Timestamps
  should be stored as integers using an fix-point notations, for
  instance 64bits with 32bit fractional seconds (the NTP timestamp),
  or in the future 128/48.
...
 
  Extending from 64 to 128bits would be a cheap shift and increased
  precision and range could go hand in hand.
 
 I doubt we need more than 64 bit times. 2^63 seconds works out to
 292,279,025,208 years, or 292 (american) billion years.

I think Poul's point is that in the future seconds is probably way too
coarse grained.  Computer's are getting faster all the time, and in the
future we may need 64 seconds, plus an additional 64 bits for the
fractions of a second, which will be necessary for accurate timekeeping.




Nate


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Julian Elischer



On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:

 Matt doesn't represent the FreeBSD project, and even if he rewrites
 the VFS subsystem so he can understand it, his rewrite would face
 considerable resistance on its way into FreeBSD.  I don't think
 there is reason to rewrite it, but there certainly are areas
 that need fixing.

You are misinformed as far as I know.. From discussions I saw, th
main architect of a VFS rewrite would be Kirk, and Matt would be acting as
Kirk's right-hand-man.

 
 The use of the "vfs_default" to make unimplemented VOP's
 fall through to code which implements function, while well
 intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

Well I believe that Kirk considers them misguided too, but he stated that
he wasn't going to remove them without serious thought about the alternatives.
 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert

  2.  Advisory locks are hung off private backing objects.
   I'm not sure. The struct lock * is only used by layered filesystems, so
   they can keep track both of the underlying vnode lock, and if needed their
   own vnode lock. For advisory locks, would we want to keep track both of
   locks on our layer and the layer below? Don't we want either one or the
   other? i.e. layers bypass to the one below, or deal with it all
   themselves.
  
  I think you want the lock on the intermediate layer: basically, on
  every vnode that has data associated with it that is unique to a
  layer.  Let's not forget, also, that you can expose a layer into
  the namespace in one place, and expose it covered under another
  layer, at another.  If you locked down to the backing object, then
  the only issue you would be left with is one or more intermediate
  backing objects.
 
 Right. That exported struct lock * makes locking down to the lowest-level
 file easy - you just feed it to the lock manager, and you're locking the
 same lock the lowest level fs uses. You then lock all vnodes stacked over
 this one at the same time. Otherwise, you just call VOP_LOCK below and
 then lock yourself.

I think this defeats the purpose of the stacking architecture; I
think that if you look at an unadulterated NULLFS, you'll see what I
mean.

Intermediate FS's should not trap VOP's that are not applicable
to them.

One of the purposes of doing a VOP_LOCK on intermediate vnodes
that aren't backing objects is to deal with the global vnode
pool management.  I'd really like FS's to own their vnode pools,
but even without that, you don't need the locking, since you
only need to flush data on vnodes that are backing objects.

If we look at a stack of FS's with intermediate exposure into the
namespace, then it's clear that the issue is really only applicable
to objects that act as a backing store:


--  --  
FS  Exposed in hierarchyBacking object
--  --  
top yes no
intermediate_1  no  no
intermediate_2  no  yes
intermediate_3  yes no
bottom  no  yes
--  --  

So when we lock "top", we only lock in intermediate_2 and in bottom.

Then we attempt to lock in intermediate_3, but it fails: not because
there is a lock on the vnode in intermediate_3, but because there is
a lock in bottom.

It's unnecessary to lock the vnodes in the intermediate path, or
even at the exposure level, unless they are vnodes that have an
associated backing store.

The need to lock in intermediate_2 exists because it is a translation
layer or a namespace escape.  It deals with compression, or it deals
with file-as-a-directory folding, or it deals with file-hiding
(perhaps for a quoata file), etc..  If it didn't, it wouldn't need
backing store (and therefore wouldn't need to be locked).


  For a layer with an intermediate backing object, I'm prepared to
  declare it "special", and proxy the operation down to any inferior
  backing object (e.g. a union FS that adds files from two FS's
  together, rather than just directoriy entry lists).  I think such
  layers are the exception, not the rule.
 
 Actually isn't the only problem when you have vnode fan-in (union FS)? 
 i.e.  a plain compressing layer should not introduce vnode locking
 problems. 

If it's a block compression layer, it will.  Also a translation layer;
consider a pure Unicode system that wants to remotely mount an FS
from a legacy system.  To do this, it needs to expand the pages from
the legacy system [only it can, since the legacy system doesn't know
about Unicode] in a 2:1 ratio.  Now consider doing a byte-range lock
on a file on such a system.  To propogate the lock, you have to do
an arithmetic conversion at the translation layer.  This gets worse
if the lower end FS is exposed in the namespace as well.

You could make the same arguments for other types of translation or
namespace escapes.


  I think that export policies are the realm of /etc/exports.
  
  The problem with each FS implementing its own policy, is that this
  is another place that copyinstr() gets called, when it shouldn't.
 
 Well, my thought was that, like with current code, most every fs would
 just call vfs_export() when it's presented an export operation. But by
 retaining the option of having the fs do its own thing, we can support
 different export semantics if desired.

I think this bears down on whether the NFS server VFS consumer is
allowed access to the VFS stack at the particular intermediate
layer.  I think this is really an administrative policy decision,
and not an option for the VFS.

I think it would be bad if a given VFS could refuse to participate
in a 

Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert

I'm not familiar with the VFS_default stuff. All the vop_default_desc
routines in NetBSD point to error routines.
   
   In FreeBSD, they now point to default routines that are *not* error
   routines.  This is the problem.  I admit the change was very well
   intentioned, since it made the code a hell of a lot more readable,
   but choosing between readable and additional function, I take function
   over form (I think the way I would have "fixed" the readability is by
   making the operations that result in the descriptor set for a mounted
   FS instance be both discrete, and named for their specific function).
  
  As I recall most of FBSD's default routines are also error routines, if
  the exceptions were a problem it would would be trivial to fix.
 
 You would have to de-collapse several VOP lists that have been
 pre-collapsed.
 
 You are talking gibberish here.  Please show code where this is
 a problem.

When you write a proxy stacking layer, such as John Heidemann's
network proxy stacking layer (an NFS alternative), VOP's which
would normally be handled by vfs_default have to be handled on
the other end of the proxy, instead, in the same way that they
would be handled by the vfs_default stuff.

Some VOP's, like advisory locking, need both local assertion and
remote proxy of the VOP to avoid introducing race windows.

The result of this is that, if you rely on the vfs_default stuff,
then you can't proxy those VOP's into a different address space,
either on another machine, or to a user space VFS stacking layer
developement environment.

This is the same problem that embedding VM references directly
into any FS causes, and that vm_object_t aliases would exacerbate.

John has, in the past, sent me a number of stacking layers done
by various people, with the requirement that I not redistribute
them, as they are not what he would consider to be properly
representative of finished work.

Since John himself did the network proxy, you could perhaps get
him to send you a copy, so you could have direct access to code
where this was a problem.

Make sure that the system you are talking to over the proxy is
not assumed to be a FreeBSD system (e.g. don't assume that the
vfs_default stuff exists on the other end of the proxy, or that
it would be functional).


Terry Lambert
[EMAIL PROTECTED]
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp

In message [EMAIL PROTECTED], Terry Lambert writes:

 You would have to de-collapse several VOP lists that have been
 pre-collapsed.
 
 You are talking gibberish here.  Please show code where this is
 a problem.

When you write a proxy stacking layer, such as John Heidemann's
network proxy stacking layer (an NFS alternative), VOP's which
would normally be handled by vfs_default have to be handled on
the other end of the proxy, instead, in the same way that they
would be handled by the vfs_default stuff.

And what prevents you from taking over the default op ?

--
Poul-Henning Kamp FreeBSD coreteam member
[EMAIL PROTECTED]   "Real hackers run -current on their laptop."
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Bill Studenmund

On Wed, 18 Aug 1999, Terry Lambert wrote:

  Right. That exported struct lock * makes locking down to the lowest-level
  file easy - you just feed it to the lock manager, and you're locking the
  same lock the lowest level fs uses. You then lock all vnodes stacked over
  this one at the same time. Otherwise, you just call VOP_LOCK below and
  then lock yourself.
 
 I think this defeats the purpose of the stacking architecture; I
 think that if you look at an unadulterated NULLFS, you'll see what I
 mean.

Please be more precise. I have looked at an unadulterated NULLFS, and
found it lacking. I don't see how this change breaks stacking.

 Intermediate FS's should not trap VOP's that are not applicable
 to them.

True. But VOP_LOCK is applicable to layered fs's. :-)

 One of the purposes of doing a VOP_LOCK on intermediate vnodes
 that aren't backing objects is to deal with the global vnode
 pool management.  I'd really like FS's to own their vnode pools,
 but even without that, you don't need the locking, since you
 only need to flush data on vnodes that are backing objects.
 
 If we look at a stack of FS's with intermediate exposure into the
 namespace, then it's clear that the issue is really only applicable
 to objects that act as a backing store:
 
 
 ----  
 FSExposed in hierarchyBacking object
 ----  
 top   yes no
 intermediate_1no  no
 intermediate_2no  yes
 intermediate_3yes no
 bottomno  yes
 ----  
 
 So when we lock "top", we only lock in intermediate_2 and in bottom.

No. One of the things Heidemann notes in his dissertation is that to
prevent deadlock, you have to lock the whole stack of vnodes at once, not
bit by bit.

i.e. there is one lock for the whole thing.

  Actually isn't the only problem when you have vnode fan-in (union FS)? 
  i.e.  a plain compressing layer should not introduce vnode locking
  problems. 
 
 If it's a block compression layer, it will.  Also a translation layer;
 consider a pure Unicode system that wants to remotely mount an FS
 from a legacy system.  To do this, it needs to expand the pages from
 the legacy system [only it can, since the legacy system doesn't know
 about Unicode] in a 2:1 ratio.  Now consider doing a byte-range lock
 on a file on such a system.  To propogate the lock, you have to do
 an arithmetic conversion at the translation layer.  This gets worse
 if the lower end FS is exposed in the namespace as well.

Wait. byte-range locking is different from vnode locking. I've been
talking about vnode locking, which is different from the byte-range
locking you're discussing above.

  Nope. The problem is that while stacking (null, umap, and overlay fs's)
  work, we don't have the coherency issues worked out so that upper layers
  can cache data. i.e. so that the lower fs knows it has to ask the uper
  layers to give pages back. :-) But multiple ls -lR's work fine. :-)
 
 With UVM in NetBSD, this is (supposedly) not an issue.

UBC. UVM is a new memory manager. UBC unifies the buffer cache with the VM
system.

 You could actually think of it this way, as well: only FS's that
 contain vnodes that provide backing should implement VOP_GETPAGES
 and VOP_PUTPAGES, and all I/O should be done through paging.

Right. That's part of UBC. :-)

Take care,

Bill



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Kris Kennaway

On Wed, 18 Aug 1999, Marc Ramirez wrote:

 Oh!  I was under the impression that it just didn't work, even with
 correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
 with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
 time!

It's controlled by a sysctl in FreeBSD which defaults to "off" - I forget
what it is called.

Kris



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Gigabit ethernet support?

1999-08-18 Thread David Miller

Any supported cards in 3.2.x?   The HCL pages don't list any:(

Thanks,

--- David



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Bill Studenmund

On Tue, 17 Aug 1999, Brian C. Grayson wrote:

 On Tue, Aug 17, 1999 at 07:17:45PM -0700, Wilfredo Sanchez wrote:
A group of us at Apple are trying to figure out how to handle  
  situations where a filesystem with "foreign" user ID's are present.   
 
   Have you looked at mount_umap(8)?  I (naively) think it would
 solve most of your concerns.

I don't think so. umap is for translating credentials between domains. I
think what Fred wants to do is different, and that is to ignore the
credentials on the system.

Fred, right now what happens in MacOS when I take a disk which has sharing
credentials set up, and hook it into another machine? How are the
credentials handled there?

Also, one of the problems which has been brought up in the thread is that
umap needs to know what credentials to translate to. For that, we'd need
to stash the credentails on the drive.

Take care,

Bill



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



yp_mkdb

1999-08-18 Thread Nathaniel Schein

I am in the process of upgrading a NIS master using version 2.1.0 to version
3.2. The 'Makefile' has been customized to include automount maps for our
IRIX machines as was the 'Makefile' in the old NIS Master. The problem is
that for some reason the program 'yp_mkdb' in 3.2 is much more picky. It
does not tolerate lines as such:

nschein -rw,intrnister:/usr/home:

It complains when it encounters the '-' if removed it works fine. Also it
has problems with the '+' and absence of a whitespace following the first
ASCI string in the following line:

+auto.home

What has changed in yp_mkdb?
Is there a way to escape certain symbols? I have already tried \ '' "".
Or is there another way to make the database file?

Nathaniel Schein



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Marc Nicholas

Yes, several vendors cards are supported in 3.2...most notably cards based
on Titon I or Titon II chipsets (Alteon cards, 3Com 3c985, Netgear GA620,
etc).

-marc


Marc Nicholas netSTOR Technologies, Inc. http://www.netstor.com
"Fast, Expandable and Affordable Internet Caching Products"
1.877.464.4776 416.979.9000 fax: 416.979.8223 cell: 416.346.9255

On Wed, 18 Aug 1999, David Miller wrote:

 Any supported cards in 3.2.x?   The HCL pages don't list any:(
 
 Thanks,
 
 --- David
 
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-hackers" in the body of the message
 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert

   Right. That exported struct lock * makes locking down to the lowest-level
   file easy - you just feed it to the lock manager, and you're locking the
   same lock the lowest level fs uses. You then lock all vnodes stacked over
   this one at the same time. Otherwise, you just call VOP_LOCK below and
   then lock yourself.
  
  I think this defeats the purpose of the stacking architecture; I
  think that if you look at an unadulterated NULLFS, you'll see what I
  mean.
 
 Please be more precise. I have looked at an unadulterated NULLFS, and
 found it lacking. I don't see how this change breaks stacking.


OK, there's the concept of "collapse" of stacking layer.  This was
first introduced in the Rosenthal stacking vnode architecture, out
of Sun Microsystems.

Rosenthal was concerned that, when you stack 500 putatively "null"
NULLFS's, that the amount of function call overhead not increase
proportionally.

To resolve this, he introduced the concept of a "collapsed" VFS
stack.  That is, the actual array of function vectors is actually
a one dimensional projection of a two dimensional stack, and that
the visible portion is actually where the first layer on the way
down the stack that implements a VOP occurs.

We can visualize this like so:

VOPs
Layer | VOP1VOP2VOP3VOP4VOP5VOP6...
---
L1  -   -   -   imp -   -   ...
L2  imp -   -   imp -   imp ...
L3  imp -   -   imp imp -   ...
L4  -   -   imp -   -   -   ...
L5  imp imp imp imp imp imp ...

The resulting "collapsed" array of entry vectors looks like so:

L2VOP1  L5VOP2  L4VOP3  L1VOP4  L3VOP5  L2VOP6  ...

There is an implicit assumption here that most stacks will not be
randomly staggered like this example.  The idea behind this
assumption is that additional layers will most frequently add
functionality, rather than replacing it.

Heidemann carried this idea over into his architecture, to be
employed at the point that a VFS stack is first instanced.

The BSD4.4 implementation of this is partially flawed.  There is
an implicit implementation of this for the UFS/FFS "stack" of
layers, in the VOP's descriptor array exported by the combination
of the two being hard coded as being a precollapsed stack.  This
is actually antithetical to the design.

The second place this flaw is apparent is in the inability to
add VOP's into an existing kernel, since the entry point vector
is a fixed size, and is not expanded implicitly by the act of
adding a VFS layer containing a new VOP.

For the use of non-error vfs_defaults, this is also flawed for
proxies, but not for the consumer of the VFS stack, only for the
producer end on the other side of the proxy, which although it
does not implement a particular VOP, needs to _NOT_ use the
local vfs_default for the VOP, but instead needs to proxy the
VOP over to the other side for remote processing.

The act of getting a vfs_default VOP after a collapse, instead
of having a NULL entry point that the descriptor call mechanism
treats as a call failure, damages the ability to proxy unknown
VOP's.


  Intermediate FS's should not trap VOP's that are not applicable
  to them.
 
 True. But VOP_LOCK is applicable to layered fs's. :-)

Only for translation layers that require local backing store.  I'm
prepared to make an exception for them, and require that they
explicitly call the VOP in the underlying vnode over which they are
stacked.  This is the same compromise that both Rosenthal and
Heidemann consciously chose.


  One of the purposes of doing a VOP_LOCK on intermediate vnodes
  that aren't backing objects is to deal with the global vnode
  pool management.  I'd really like FS's to own their vnode pools,
  but even without that, you don't need the locking, since you
  only need to flush data on vnodes that are backing objects.
  
  If we look at a stack of FS's with intermediate exposure into the
  namespace, then it's clear that the issue is really only applicable
  to objects that act as a backing store:
  
  
  --  --  
  FS  Exposed in hierarchyBacking object
  --  --  
  top yes no
  intermediate_1  no  no
  intermediate_2  no  yes
  intermediate_3  yes no
  bottom  no  yes
  --  --  
  
  So when we lock "top", we only lock in intermediate_2 and in bottom.
 
 No. One of the things Heidemann notes in his dissertation is that to
 prevent deadlock, you have to lock the whole stack of vnodes at 

Re: RE: Need some advice regarding portable user IDs

1999-08-18 Thread Anthony Kimball


:   And what happens accross NIS domains?

UID = SSN?  Oops -- it's too late for RFC 666.  Besides, that's Bill, not Steve.




  


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: RE: Need some advice regarding portable user IDs

1999-08-18 Thread Todd Backman




On Wed, 18 Aug 1999, Anthony Kimball wrote:

 
 :   And what happens accross NIS domains?
 
 UID = SSN?  Oops -- it's too late for RFC 666.  Besides, that's Bill, not 
 Steve.
 

ROTFLMFAO (rolling on the floor laughing my f***ing a** off) ;^)

Thanks for brightening my day with this grin inducing line.

- Todd



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



RE: Gigabit ethernet support?

1999-08-18 Thread Charles Randall

Bill Paul has developed a driver for the Alteon Tigon 1 and 2 cards.

http://www.freebsd.org/~wpaul/Alteon/

FYI,
Charles

-Original Message-
From: David Miller [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, August 18, 1999 1:55 PM
To: [EMAIL PROTECTED]
Subject: Gigabit ethernet support?


Any supported cards in 3.2.x?   The HCL pages don't list any:(

Thanks,

--- David



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp


Terry,

It is very fine with this example, but I'm not even going to bother
much with it for several reasons, most of which you can find codified
in the development rules for X11 which you can find in Scheiflers
book.

But for the record: your example would get even shorter on
the code we had before I started using the default op sensibly
because all the layers tended to shunt things they didn't 
understand to errno rather than pass them through, so in
fact my change took us closer to being able to handle the
rather lofty example you have here.

Once you show me an actual implementation which has a problem
with it, I will look at it again, until then, I think pretty
much everything else is more important (Scheiflers 1st rule :-)

Poul-Henning

 And what prevents you from taking over the default op ?

It needs to be NULL, not taken over.


machine 1  machine2machine 3

vfs consumer
upper proxy - lower proxy
   vfs stacking layer
   upper proxy - lower proxy
   vfs producer

How do I get a VOP, unknown to machine 2, from the vfs consumer
on machine 1 that does know about it, to the vfs producer on
machine 3 that also knows about it?

--
Poul-Henning Kamp FreeBSD coreteam member
[EMAIL PROTECTED]   "Real hackers run -current on their laptop."
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Matthew N. Dodd

On Wed, 18 Aug 1999, David Miller wrote:
 Any supported cards in 3.2.x?   The HCL pages don't list any:(

Support for the Alteon Tigon 1  2 based boards and the SysKonnect bards
is in 3.2-STABLE.  (Both drivers by Bill Paul.)

-- 
| Matthew N. Dodd  | '78 Datsun 280Z | '75 Volvo 164E | FreeBSD/NetBSD  |
| [EMAIL PROTECTED] |   2 x '84 Volvo 245DL| ix86,sparc,pmax |
| http://www.jurai.net/~winter | This Space For Rent  | ISO8802.5 4ever |



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Bill Studenmund

On Wed, 18 Aug 1999, Wilfredo Sanchez wrote:

   I think Mac OS 8 will forget about the credentials.  I don't  
 actually know much about how sharing works.
 
   But the current file sharing behaviour is not entirely useful to  
 think about, because it doesn't effect the local permissions (much),  
 and the local permission are what I'm worried about.  Exported  
 filesystems are another story, and I don't want to compilcate things  
 too much by worrying about that right now.

My thought here was more that this was the closest thing to prior art that
MacOS has, and that that might be a good user experience to emulate. ;-)

Probably the thing to do is either have options to the mount call which
have the mounting user own everything, or to set up a umap which maps the
desired user to root for access on the filesystem.

Take care,

Bill



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert

  You would have to de-collapse several VOP lists that have been
  pre-collapsed.
  
  You are talking gibberish here.  Please show code where this is
  a problem.
 
 When you write a proxy stacking layer, such as John Heidemann's
 network proxy stacking layer (an NFS alternative), VOP's which
 would normally be handled by vfs_default have to be handled on
 the other end of the proxy, instead, in the same way that they
 would be handled by the vfs_default stuff.
 
 And what prevents you from taking over the default op ?

It needs to be NULL, not taken over.


machine 1   machine2machine 3

vfs consumer
upper proxy - lower proxy
vfs stacking layer
upper proxy - lower proxy
vfs producer

How do I get a VOP, unknown to machine 2, from the vfs consumer
on machine 1 that does know about it, to the vfs producer on
machine 3 that also knows about it?

My understanding is that it is very hard, given vfs_default:

On machine 1, since the upper proxy doesn't know from VOP's, it
wants to locally satisfy it from vfs_default on machine 1.  Taking
over the default op doesn't really help me; I have to do surgery
to the in core dispatch vector instance to do the job properly
(e.g. zapping it out, not taking it over).

On machine 2, it is out of range, but still needs to be passed
through the stacking layer, from the lower porxy to the upper
proxy (and the response, back).


Terry Lambert
[EMAIL PROTECTED]
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: lpd security check for changed-file vs NFS

1999-08-18 Thread Garance A Drosihn

At 8:48 AM -0500 8/18/99, David Scheidt wrote:
On Tue, 17 Aug 1999, Garance A Drosihn wrote:

  At 6:37 PM -0700 8/17/99, Matthew Dillon wrote:
  If you removed the stat test, I would simply get rid of the -s
  option entirely - require that all files be queued to the print
  spool.
 
  The administration would kill me.  I would prefer to avoid that.
 
  (note that the check isn't completely removed, it's "only" nullified
  for NFS-mounted files.  We use AFS for most things here, so the vast

Couldn't you turn it off only for NFS mounted files?

I first took this to mean "turn off the security check", but now I see
it means "turn off the -s option".  In thinking about this suggestion,
I think that as long as I allow-but-ignore the option for nfs files, it
might work out better than I initially thought it would.   I don't want
to completely reject '-s' because they have that embedded in a lot of
scripts and canned procedures that I doubt they want to search for right
now.  But just ignoring the option for NFS files might not be too bad.

I do keep thinking that they would have a fit if some 'lpr -s' didn't
work because it ran out of space to copy the file into the spool
directory.  Still, I'll have to think about this some more.  Thanks.


  Any advice on how to kick AIX so the st_dev+st_ino check will work
  right is also welcome.  It baffles me why AIX does things the way it
  does.  It kinda looks like the values it uses are pointers to some

The joke about AIX is that it was created by aliens who were given the
UNIX documentation, but no example system.  I have seen very little
that suggests this to be untrue.

Everytime I start thinking "well AIX isn't TOO bad", something like
this comes along to remind me...


---
Garance Alistair Drosehn   =   [EMAIL PROTECTED]
Senior Systems Programmer  or  [EMAIL PROTECTED]
Rensselaer Polytechnic Institute


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Chris Dillon

On Wed, 18 Aug 1999, Bill Studenmund wrote:

 On Tue, 17 Aug 1999, Brian C. Grayson wrote:
 
  On Tue, Aug 17, 1999 at 07:17:45PM -0700, Wilfredo Sanchez wrote:
 A group of us at Apple are trying to figure out how to handle  
   situations where a filesystem with "foreign" user ID's are present.   
  
Have you looked at mount_umap(8)?  I (naively) think it would
  solve most of your concerns.
 
 I don't think so. umap is for translating credentials between domains. I
 think what Fred wants to do is different, and that is to ignore the
 credentials on the system.
 
 Fred, right now what happens in MacOS when I take a disk which has sharing
 credentials set up, and hook it into another machine? How are the
 credentials handled there?
 
 Also, one of the problems which has been brought up in the thread is that
 umap needs to know what credentials to translate to. For that, we'd need
 to stash the credentails on the drive.

I'm probably being extremely naive myself, but I just envisioned a
scenario like this (pardon me if someone else has already suggested
this):

When a filesystem is mounted as foreign (HOW that is determined I
won't talk about), every file in the filesytem has its credentials
mapped to that of the mountpoint.  File mode bits are not remapped in
any way.  New files gain the credentials of their _foreign_ parent.

That's the skinny.  Now I'll give a (much longer) example to clarify.

An origin filesystem (created by and mounted on the same system) which
happens to have stuff owned by several different users (this is all
pseudo... don't mind sizes, dates, and link counts in this example):

drwxr-xr-x   4 root  wheel512 Aug 18 15:42 ./
drwxr-x---   4 harry users512 Mar 10 10:21 dir1/
drwxr-xr-x   2 john  users512 Jul  1 18:40 dir2/

ls -la dir1
-rw-r-   1 harry users0 Aug 18 15:48 bar
-rw-r-   1 harry users0 Aug 18 15:48 foo

Take this filesystem and mount it as a "foreign" filesystem on another
machine.  User 'jake' owns the mountpoint on the machine.

drwxr-xr-x   2 jake  users512 Jan  4  1999 /mnt/

mount_foreign /dev/whatever /mnt

ls -la /mnt
drwxr-xr-x   4 jake  users512 Aug 18 15:42 ./
drwxr-x---   4 jake  users512 Mar 10 10:21 dir1/
drwxr-xr-x   2 jake  users512 Jul  1 18:40 dir2/

ls -la /mnt/dir1/
-rw-r-   1 jake  users0 Aug 18 15:48 bar
-rw-r-   1 jake  users0 Aug 18 15:48 foo

Note file mode bits were not affected, but everything gained the
user/group of the mountpoint.

Now what happens if user 'jake' adds something to the filesystem?

touch /mnt/dir1/baz

ls -la /mnt/dir1/
-rw-r-   1 jake  users0 Aug 18 15:48 bar
-rw-r-   1 jake  users0 Aug 18 15:48 foo
-rw-r-   1 jake  users0 Aug 18 15:50 baz

From jake's perspective, this happens as if it were an origin
filesystem and he owned everything on it.

Now, mount the filesystem again on it's origin system.

drwxr-xr-x   4 root  wheel512 Aug 18 15:42 ./
drwxr-x---   4 harry users512 Mar 10 10:21 dir1/
drwxr-xr-x   2 john  users512 Jul  1 18:40 dir2/

Nothing changed here as far as credentials are concerned.

ls -la dir1
-rw-r-   1 harry users0 Aug 18 15:48 bar
-rw-r-   1 harry users0 Aug 18 15:48 foo
-rw-r-   1 harry users0 Aug 18 15:50 baz

The new file added by the foreign user inherited the credentials of
its origin parent, just as it would have normally.

Points to ponder:

1) When writing to a foreign filesystem, should file mode bits
be inherited from the parent, or be based on the umask of the foreign
user writing the file at that time?  Can the umask of the foreign
owner be preserved (which isn't necessarily the same thing as
inheriting from the parent) and used?

2) How should chown and chgrp act when attempting to modify
credentials on one of these foreign filesystems?  Should it affect
only the local credential mapping (temporarily) and not modify the
foreign filesystem?  Should you completely ignore the attempts and not
do anything?  I vote for temporarily changing credentials (until
unmounted), but that is certainly a lot harder to implement than just
ignoring the changes.  :-)

3) What happens if you want to mount the filesystem on a
machine besides the origin, but you do NOT want to do credential
mapping (i.e. the systems both have the same sets of users)?  This
wouldn't matter if you just used a mount option or different
filesystem type when mounting, but I'm assuming something automagic is
wanted here.

4) What happens if you change the credentials of the
mountpoint after you have mounted the foreign filesystem?  Should the
mappings follow the new credentials, or stay as they were when first
mounted?

Even if I have no idea what I'm talking about and this was the
stupidest idea anyone has ever heard of, I hope that I at least
sparked off a few new thought processes and got some more ideas
flowing. :-)



-- Chris Dillon - [EMAIL PROTECTED] - [EMAIL PROTECTED]
   

Re: lpd security check for changed-file vs NFS

1999-08-18 Thread Warner Losh

In message [EMAIL PROTECTED] David 
Scheidt writes:
: Couldn't you turn it off only for NFS mounted files?  

For the general case (eg the code checked into the system), the check
needs to remain enabled.  Anything else is insecure.

Warner


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: lpd security check for changed-file vs NFS

1999-08-18 Thread Matthew Dillon

:For the general case (eg the code checked into the system), the check
:needs to remain enabled.  Anything else is insecure.
:
:Warner

I have to agree... whenever one starts discussing weird, esoteric 
workarounds one inevitably introduces security holes.  I really think 
just disabling the -s option may be the best solution.

Garance:  I recommend you actually check to see how big your printer spools
get.  If they look reasonable then turning off -s is not going to hurt
anything.  I expect that most users don't even know the option exists and
so don't use it anyway.

-Matt
Matthew Dillon 
[EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: lpd security check for changed-file vs NFS

1999-08-18 Thread David Scheidt

On Wed, 18 Aug 1999, Matthew Dillon wrote:

 :For the general case (eg the code checked into the system), the check
 :needs to remain enabled.  Anything else is insecure.
 :
 :Warner

Oh, absolutely.  However, one of the reasons people use an operating system
they have source to is to make it work for them.  

 
 I have to agree... whenever one starts discussing weird, esoteric 
 workarounds one inevitably introduces security holes.  I really think 
 just disabling the -s option may be the best solution.

It is apparent that I was unclear.  What I meant was use the fstat test for 
local files.  For NFS mounted files, don't use the test, since it doesn't
work, and don't allow the the -s option.  (Better would be to accept, and
ignore the -s, perhaps producing a warning?) 

David Scheidt



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: BSD voice synthesis

1999-08-18 Thread Julian Elischer

I haven't played with it for a few weeks, but I recall seeing a default
volume somewhere. (in the documantation)

I think you can set it in your init files but I can't go look right now.

julian
(it seemed ok to me but I didn't test it too much)


On Wed, 18 Aug 1999, Nik Clayton wrote:

 On Tue, Aug 03, 1999 at 12:37:39AM -0700, Julian Elischer wrote:
  Just fetched and compiled the "festival" package.
  http://www.cstr.ed.ac.uk/projects/festival
 
 Likewise, based on your comments.
 
 Has anyone had any problems with the volume being far too low?
 
 The sound card on this box is a 
 
 pcm2 (CS423x/Yamaha/AD1816 CS4236 sn 0x) at 0x530-0x537 irq 5 drq 1 fl
 ags 0x13 on isa
 
 and I run 
 
 mixer pcm 80
 
 in /etc/rc.local, to set the volume to a comfortable level for playing 
 .mp3 files and the like.
 
 If I turn the speakers right up then I can hear the output, but then
 everything else is distorted.
 
 Any thoughts?
 
 N
 -- 
  [intentional self-reference] can be easily accommodated using a blessed,
  non-self-referential dummy head-node whose own object destructor severs
  the links.
 -- Tom Christiansen in [EMAIL PROTECTED]
 



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



anybody love qsort.c?

1999-08-18 Thread Christopher Seiwald

The FreeBSD qsort implementation has a rather nasty degenerate case.
If you have data that partitions exactly about the median pivot, yet
which is unsorted in either partition, you get get treated to an insertion
sort.  Example:

1 2 3 4 5 6 7 8 9 10 19 18 17 16 14 14 13 12 11

qsort picks 10 as the median, does no swaps on its first pass, and so
decides to switch to an insertion sort.   The idea is that if no swaps
occur, the data is likely to be nearly already sorted and a good candidate
for insertion sort.  This turns out to be a (very) bad idea if you have
some unsorted data buried in the middle of a (very) large dataset.

The implementation claims to come from Bentley and McIlroy's paper,
"Engineering a Sort Function," and this is largely true, but the insertion
sort optimization(?) isn't in that paper.  The GNU qsort.c only does an
insertion sort if it is below a certain threshhold in size, and so never
attempts such a sort on the whole dataset.  (The GNU qsort does a number
of other things pooh-poohed in the Bentley paper.)

It's a pretty straightforward change to bypass the insertion sort for
large subsets of the data.  If no one has a strong love for qsort, I'll
educate myself on how to make and contribute this change.

Christopher

Christopher Seiwald Perforce Software  1-510-864-7400
[EMAIL PROTECTED] f-f-f-fast SCM   http://www.perforce.com



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: anybody love qsort.c?

1999-08-18 Thread Archie Cobbs

Christopher Seiwald writes:
 The FreeBSD qsort implementation has a rather nasty degenerate case.
 If you have data that partitions exactly about the median pivot, yet
 which is unsorted in either partition, you get get treated to an insertion
 sort.  Example:
 
   1 2 3 4 5 6 7 8 9 10 19 18 17 16 14 14 13 12 11
 
 qsort picks 10 as the median, does no swaps on its first pass, and so
 decides to switch to an insertion sort.   The idea is that if no swaps
 occur, the data is likely to be nearly already sorted and a good candidate
 for insertion sort.  This turns out to be a (very) bad idea if you have
 some unsorted data buried in the middle of a (very) large dataset.
 
 The implementation claims to come from Bentley and McIlroy's paper,
 "Engineering a Sort Function," and this is largely true, but the insertion
 sort optimization(?) isn't in that paper.  The GNU qsort.c only does an
 insertion sort if it is below a certain threshhold in size, and so never
 attempts such a sort on the whole dataset.  (The GNU qsort does a number
 of other things pooh-poohed in the Bentley paper.)
 
 It's a pretty straightforward change to bypass the insertion sort for
 large subsets of the data.  If no one has a strong love for qsort, I'll
 educate myself on how to make and contribute this change.

Sounds good to me.. let's fix it.

-Archie

___
Archie Cobbs   *   Whistle Communications, Inc.  *   http://www.whistle.com


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: OpenLDAP tests?

1999-08-18 Thread Steven Ames


Me too. Remarkable what removing a couple of Debug lines will
do for you.

Thanks!

-Steve

 Found it.

 This let the tests run fine for me.

 ===
 RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/daemon.c,v
 retrieving revision 1.14.2.7.2.8
 retrieving revision 1.14.2.7.2.9
 diff -u -r1.14.2.7.2.8 -r1.14.2.7.2.9
 --- servers/slapd/daemon.c  1999/03/02 18:30:05 1.14.2.7.2.8
 +++ servers/slapd/daemon.c  1999/07/20 05:10:35 1.14.2.7.2.9
 @@ -390,7 +390,6 @@
  void
  slap_set_shutdown( int sig )
  {
 -   Debug( LDAP_DEBUG_ANY, "slapd got shutdown signal %d\n", sig, 0, 0
 );
 slapd_shutdown = 1;
 ldap_pvt_thread_kill( listener_tid, LDAP_SIGUSR1 );
  
 @@ -401,8 +400,6 @@
  void
  slap_do_nothing( int sig )
  {
 -   Debug( LDAP_DEBUG_TRACE, "slapd got do_nothing signal %d\n", sig,
 0, 0 );
 -
 /* reinstall self */
 (void) SIGNAL( sig, slap_do_nothing );
  }







 On Wed, 18 Aug 1999, Steven Ames wrote:

  Thanks! I'll check the site (but would appreciate your sending it to me
  also).
  
  -Steve
  
  On Tue, 17 Aug 1999, Jaye Mathisen wrote:
  
   
   There is a patch that fixes this, I found it, and submitted a bug report
   on their web page.
   
   I don't have it handy, but if you go to www.openldap.org and to their
   faq-o-matic, and it should be in there.
   
   I'll see if I can find it and send it to you in the mean time.
   
   On Tue, 17 Aug 1999, Steven Ames wrote:
   

I've got a project at work where using LDAP would make my life
much simpler. So... on my home PC (running FBSD 4.0-CURRENT 8.2.99)
I installed openldap from the ports collection (V1.2.3...ports cvsuped
about an hour ago from cvsup5.freebsd.org).

I cd into the test area /usr/ports/work/ldap/tests and type 'make'.
Looking good... until... on test0003-search it stops. It just holds.
My CPU is up to 99% and its chewed up 18 minutes of CPU before I hit
Ctrl-C and stopped it. I did a 'make clean' moved scripts/test0003-seach
to scripts/test0009-search (so it would run last) and tried again.
Same results on test0004-modify. *sigh*

Do the tests just not run? I didn't dare to just go ahead and use it
as I'm not familiar enough with LDAP to judge if a failure is my fault
or a system problem. I'd feel a lot safer if the tests all passed so that
if anything goes wrong from that point I can call it user error.

Anyone?

-Steve


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message

   
  



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Wes Peters

Bill Paul wrote:
 
 Of all the gin joints in all the towns in all the world, Charles Randall
 had to walk into mine and say:
 
  Bill Paul has developed a driver for the Alteon Tigon 1 and 2 cards.
 
http://www.freebsd.org/~wpaul/Alteon/
 
  FYI,
  Charles
 
  -Original Message-
  From: David Miller [mailto:[EMAIL PROTECTED]]
  Sent: Wednesday, August 18, 1999 1:55 PM
  To: [EMAIL PROTECTED]
  Subject: Gigabit ethernet support?
 
 
  Any supported cards in 3.2.x?   The HCL pages don't list any:(
 
 The ti driver supports several cards, including the Alteon AceNIC,
 the 3Com 3c985-SX, the Netgear GA620, the DEC EtherWORKS 1000, the
 SGI PCI gigabit ethernet card, the NEC gigabit ethernet card and
 possibly some from IBM as well, though I don't know the PCI vendor/device
 IDs for those so I can't be sure (if you find them out, you can try
 hacking them into the driver). All of these are supported by the same
 driver because they're all OEMed from Alteon.

We have two of the NetGear GA620's here, and they work quite nicely.  I use
them for testing throughput via Gig-E on our switches.  Mine is running in
a lowly PII/233, on a 32-bit x 33 Mhz slot, and can push bits at 320 Mbps.
The GA620 will work in any 32 or 64 bit, 33 or 66 Mhz slot.  A 64x66 slot
would probably speed things up appreciably.

They're relatively cheap, too, going for $339 at DataComm Warehouse.

I'm still working on those Packet Engine cards, Bill.  They're really quite
disorganized and difficult to work with up there in Spokane...

-- 
"Where am I, and what am I doing in this handbasket?"

Wes Peters Softweyr LLC
http://softweyr.com/   [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Bill Paul

Of all the gin joints in all the towns in all the world, David Malone 
had to walk into mine and say:

 On Wed, Aug 18, 1999 at 06:43:24PM -0400, Bill Paul wrote:
 
 Just out of curiosity, I thought I saw that you could get Intel
 Etherexpress 1Gb/s cards. Do these exist and if so would they work
 with the fxp driver as it is?
 
   David.

The Intel gigabit ethernet cards are nothing like the EtherExpress
fast ethernet adapters. Getting information out of Intel is like
trying to squeeze blood from a stone. Either they want you to sign
a non disclosure agreement that prevents you from releasing driver
source (or makes it hard) or they won't give you any information at
all. Sometimes they also play a different game where they release
some information and pretend they're being 'open' but in reality
the stuff they release is just fluff and you still have to sign an
NDA to get your hands on the good stuff.

As an aside, there are bound to be extra problems with the Intel
gigabit NICs because, if I'm not mistaken, then use an on-board
i960 processor to drive them. This means that in order to make the
NIC work, you have to load firmware into it, and with firmware
comes sticky licensing issues. The Alteon Tigon chipset also requires
firmware (it has embedded MIPS R4000 CPUs) but Alteon actually released
the firmware source code along with all the other Tigon development
information. They even have a mailing list where you can send in
questions regarding the firmware and get answers from a real live
developer.

Until such time as Intel gets its head out of its ass in this regard,
I refuse to have anything to do with their networking products, especially
when I have two other sources of perfectly good gigabit ethernet NICs
available to me with full, unencumbered documentation. Initially this
was not true of SysKonnect: they had a Linux driver for their cards
but no programming info available. Much to my surprise, after a lengthy
e-mail discussion, they actually agreed to release the manual for their
GEnesis ASIC not just to me but to anybody without NDA on their web
site.

You would think that Intel would be prepared to make the same commitment
to their customers, but so far as I know, they're still stuck in their
proprietary ways.

-Bill

-- 
=
-Bill Paul(212) 854-6020 | System Manager, Master of Unix-Fu
Work: [EMAIL PROTECTED] | Center for Telecommunications Research
Home:  [EMAIL PROTECTED] | Columbia University, New York City
=
 "It is not I who am crazy; it is I who am mad!" - Ren Hoek, "Space Madness"
=


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Kenneth D. Merry

Wes Peters wrote...
 Bill Paul wrote:
  
  Of all the gin joints in all the towns in all the world, Charles Randall
  had to walk into mine and say:
  
   Bill Paul has developed a driver for the Alteon Tigon 1 and 2 cards.
  
 http://www.freebsd.org/~wpaul/Alteon/
  
   FYI,
   Charles
  
   -Original Message-
   From: David Miller [mailto:[EMAIL PROTECTED]]
   Sent: Wednesday, August 18, 1999 1:55 PM
   To: [EMAIL PROTECTED]
   Subject: Gigabit ethernet support?
  
  
   Any supported cards in 3.2.x?   The HCL pages don't list any:(
  
  The ti driver supports several cards, including the Alteon AceNIC,
  the 3Com 3c985-SX, the Netgear GA620, the DEC EtherWORKS 1000, the
  SGI PCI gigabit ethernet card, the NEC gigabit ethernet card and
  possibly some from IBM as well, though I don't know the PCI vendor/device
  IDs for those so I can't be sure (if you find them out, you can try
  hacking them into the driver). All of these are supported by the same
  driver because they're all OEMed from Alteon.
 
 We have two of the NetGear GA620's here, and they work quite nicely.  I use
 them for testing throughput via Gig-E on our switches.  Mine is running in
 a lowly PII/233, on a 32-bit x 33 Mhz slot, and can push bits at 320 Mbps.
 The GA620 will work in any 32 or 64 bit, 33 or 66 Mhz slot.  A 64x66 slot
 would probably speed things up appreciably.

I doubt a faster PCI interface would really speed things up.  My guess is
that you've got some other bottleneck other than PCI bandwidth.  Is the CPU
pegged on either end?

I would recommend that you make sure you've got a couple of things tweaked,
they may increase your performance somewhat:

- set your MTU to 9000, unless of course you're going through a switch that
  can't handle it
- turn on net.inet.tcp.rfc1323, it enables support for TCP windows larger
  than 64K
- increase net.inet.tcp.sendspace and net.inet.tcp.recvspace to 256K.
  You'll have to edit src/sys/socketvar.h and increase SB_MAX.  From what
  I've seen (this may not be quite correct, but it's close enough) SB_MAX
  has to be double whatever you want to set sendspace and recvspace to.
  This has the effect of changing the TCP window size to 256K, I think.
  From what I've seen, increasing it to 512K is counterproductive unless
  you've got a card with 1MB of SRAM on board.  (The Netgear boards have
  512K.)

And finally, netperf seems to work reasonably well for testing performance:

http://www.netperf.org

 They're relatively cheap, too, going for $339 at DataComm Warehouse.

FWIW, NECX has them for $310.

Ken
-- 
Kenneth Merry
[EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: anybody love qsort.c?

1999-08-18 Thread John-Mark Gurney

Christopher Seiwald scribbled this message on Aug 18:
 It's a pretty straightforward change to bypass the insertion sort for
 large subsets of the data.  If no one has a strong love for qsort, I'll
 educate myself on how to make and contribute this change.

why don't you implement this w/ the 5 element median selection qsort
algorithm?  my professor for cis413 talked about this algorithm and
that it really is the fastest qsort algorithm...   I don't have any
pointers to a paper on this... but I might be able to dig some info up
on it if you are interested...

-- 
  John-Mark Gurney  Voice: +1 541 684 8449
  Cu Networking   P.O. Box 5693, 97405

  "The soul contains in itself the event that shall presently befall it.
  The event is only the actualizing of its thought." -- Ralph Waldo Emerson


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Daniel C. Sobral

"Ronald G. Minnich" wrote:
 
 the only portable user ids are names as strings. you can kludge and kludge
 but at some point the kludges will pile up too high, fall over, and hurt
 somebody. how many new options did we see proposed in the last 12 hours
 for this problem?

Actually, I think that's a kludge too. I'd rather go for encrypted
data with a signature based on a public/private key algorithm,
having the signature stand for "user id". But then, I have trouble
going half way when it comes down to security.

--
Daniel C. Sobral(8-DCS)
[EMAIL PROTECTED]
[EMAIL PROTECTED]

- Can I speak to your superior?
- There's some religious debate on that question.




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: async v. sync v. default mode on ufs

1999-08-18 Thread Daniel C. Sobral

Larry Lile wrote:
 
 It was pointed out to me by a co-worker that FreeBSD has actually
 three modes of operation for mounting ufs filesystems.  Could someone
 please explain to me, and him, the differences between the three.

There are two kinds of stuff written to the fs: data and metadata.
Data is what goes inside files, metadata are things like filenames
and sizes (gross simplification, emphasis on gross).

Default for FreeBSD is async data and sync data. Sync and Async
modes go full sync/async for both metadata and data (in theory,
anyway :).

The advantage with sync metadata is that the fs never gets "too"
damaged. With async metadata writes, the fs can get in a state that
fsck won't be able to get back to life. Sync metadata writes will be
restricted to recoverable inconsistencies (ie, you may lose files
and directories, but not the filesystem).

 Also does anyone knows how these compare to sync and async on Linux?

Sync and async modes on Linux, last I checked, are like full sync
and full async modes on FreeBSD.

Then, there is softupdates, which is a whole new ball game.
Softupdates is async, but it will order, delete, collapse and expand
metadata writes so the file system will never get in an inconsistent
state. 

 
 Just a btw, you seem to be able to set sync and async on a filesystem
 at the same time.  What gives?

Beats me.

 dlane# mount -u -o sync,async,noatime /var dlane-printer# mount
 /dev/wd0s1a on / (local, noatime, synchronous, writes: sync 405 async 23)
 /dev/wd0s1e on /usr (local, noatime, synchronous, writes: sync 118365
 async 83882)
 /dev/wd0s1f on /var (asynchronous, local, noatime, synchronous, writes:
 sync 93 async 216) procfs on /proc (local)
 dlane#
 
 /var looks questionable...

Indeed. :-)

 I would never try that on purpose, but it just kinda happened, and when I
 looked at it I though "wow that's broken"!

Looks that way. Try opening a PR. :-)

--
Daniel C. Sobral(8-DCS)
[EMAIL PROTECTED]
[EMAIL PROTECTED]

- Can I speak to your superior?
- There's some religious debate on that question.




To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: Gigabit ethernet support?

1999-08-18 Thread Wes Peters

"Kenneth D. Merry" wrote:
 
 Wes Peters wrote...
  Bill Paul wrote:
  
   Of all the gin joints in all the towns in all the world, Charles Randall
   had to walk into mine and say:
  
Bill Paul has developed a driver for the Alteon Tigon 1 and 2 cards.
   
  http://www.freebsd.org/~wpaul/Alteon/
   
FYI,
Charles
   
-Original Message-
From: David Miller [mailto:[EMAIL PROTECTED]]
Sent: Wednesday, August 18, 1999 1:55 PM
To: [EMAIL PROTECTED]
Subject: Gigabit ethernet support?
   
   
Any supported cards in 3.2.x?   The HCL pages don't list any:(
  
   The ti driver supports several cards, including the Alteon AceNIC,
   the 3Com 3c985-SX, the Netgear GA620, the DEC EtherWORKS 1000, the
   SGI PCI gigabit ethernet card, the NEC gigabit ethernet card and
   possibly some from IBM as well, though I don't know the PCI vendor/device
   IDs for those so I can't be sure (if you find them out, you can try
   hacking them into the driver). All of these are supported by the same
   driver because they're all OEMed from Alteon.
 
  We have two of the NetGear GA620's here, and they work quite nicely.  I use
  them for testing throughput via Gig-E on our switches.  Mine is running in
  a lowly PII/233, on a 32-bit x 33 Mhz slot, and can push bits at 320 Mbps.
  The GA620 will work in any 32 or 64 bit, 33 or 66 Mhz slot.  A 64x66 slot
  would probably speed things up appreciably.
 
 I doubt a faster PCI interface would really speed things up.  My guess is
 that you've got some other bottleneck other than PCI bandwidth.  Is the CPU
 pegged on either end?

Not on mine, it's running about 45%.  The other end is much faster, a PII/400,
and is just discarding the packets, so it's not sweating.

 I would recommend that you make sure you've got a couple of things tweaked,
 they may increase your performance somewhat:
 
 - set your MTU to 9000, unless of course you're going through a switch that
   can't handle it

Not yet, that's part of what I will be developing.  ;^)  Due to architectural
limitations, we may not be able to support jumbo frames larger than 8k.

 - turn on net.inet.tcp.rfc1323, it enables support for TCP windows larger
   than 64K

OK.

 - increase net.inet.tcp.sendspace and net.inet.tcp.recvspace to 256K.
   You'll have to edit src/sys/socketvar.h and increase SB_MAX.  From what
   I've seen (this may not be quite correct, but it's close enough) SB_MAX
   has to be double whatever you want to set sendspace and recvspace to.
   This has the effect of changing the TCP window size to 256K, I think.
   From what I've seen, increasing it to 512K is counterproductive unless
   you've got a card with 1MB of SRAM on board.  (The Netgear boards have
   512K.)

OK.

 And finally, netperf seems to work reasonably well for testing performance:
 
 http://www.netperf.org

Cool.  I've been using several tools, since we do our real performance testing
with a SmartBits.  I use spray to generate UDP traffic and a hacked-up version
of tcpblast for tcp traffic.  I'll clean it up and re-release it one of these
days.

  They're relatively cheap, too, going for $339 at DataComm Warehouse.
 
 FWIW, NECX has them for $310.

Cool.  We don't have an account there; if I get one from DataComm all I
have to do is give them the account number and it shows up on my desk the
next morning.  It's MORE convenient than going to the store.  ;^)

-- 
"Where am I, and what am I doing in this handbasket?"

Wes Peters Softweyr LLC
http://softweyr.com/   [EMAIL PROTECTED]


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message



Re: OpenLDAP tests?

1999-08-18 Thread Jaye Mathisen

There is a patch that fixes this, I found it, and submitted a bug report
on their web page.

I don't have it handy, but if you go to www.openldap.org and to their
faq-o-matic, and it should be in there.

I'll see if I can find it and send it to you in the mean time.

On Tue, 17 Aug 1999, Steven Ames wrote:

 
 I've got a project at work where using LDAP would make my life
 much simpler. So... on my home PC (running FBSD 4.0-CURRENT 8.2.99)
 I installed openldap from the ports collection (V1.2.3...ports cvsuped
 about an hour ago from cvsup5.freebsd.org).
 
 I cd into the test area /usr/ports/work/ldap/tests and type 'make'.
 Looking good... until... on test0003-search it stops. It just holds.
 My CPU is up to 99% and its chewed up 18 minutes of CPU before I hit
 Ctrl-C and stopped it. I did a 'make clean' moved scripts/test0003-seach
 to scripts/test0009-search (so it would run last) and tried again.
 Same results on test0004-modify. *sigh*
 
 Do the tests just not run? I didn't dare to just go ahead and use it
 as I'm not familiar enough with LDAP to judge if a failure is my fault
 or a system problem. I'd feel a lot safer if the tests all passed so that
 if anything goes wrong from that point I can call it user error.
 
 Anyone?
 
 -Steve
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Onstream?

1999-08-18 Thread Warner Losh
In message 19990817230910.a6...@netmonger.net Christopher Masto writes:
: Do they still not allow you to release the specs?  How is the code
: going to become part of FreeBSD if they won't allow its release?

I didn't sign an NDA to get my copy of the spec or the hardware...

I also don't have time to devote to the onstream IDE project.  I'm
looking for someone with the kernel skills and track record to take
over for me.

Warner


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Probably bug with allocation memory in FreeBSD-3.2-RELEASE

1999-08-18 Thread Oleg Derevenetz


On Wed, 18 Aug 1999, Ilia Chipitsine wrote:

Why i think this is bug? Because any user can hung FreeBSD, settings in
/etc/login.conf can't help.
  
  Are you sure about that?  Setting datasize limits will prevent
  malloc() from doing what you're trying to make it do.  Are you
  sure you're setting your login.conf settings properly?
  
 
 guys, just a silly question !
 how dod you think login.conf works with xdm ?!
 right ! xdm simply ignores it ...
 

This is only example. 'Stable system' must be stable in any time, even
out-of-swap occured.



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Budget on user-ppp

1999-08-18 Thread Brian Somers
[.]
  Brian,
  
  The i4b stuff seems to have some sophisticated costing control code 
  (isdn.rates).
  It appears that you can define the costs at different times of day and 
  thereby
  vary the timeouts, etc.  I wonder whether any of this can be adapted for 
  modem ppp.
 
 I've added it to my todo list.  I'll probably look at the BACP or MP+ 
 stuff first though, and then at the ``when to bring up another link'' 
 code all fun  games :-)
[.]

FWIW, ppp can now be given a minimum idle timer.  While not covering 
everything, it does address the minimum call charge side of things.
-- 
Brian br...@awfulhak.orgbr...@freebsd.org
  http://www.Awfulhak.org   br...@openbsd.org
Don't _EVER_ lose your sense of humour !  br...@freebsd.org.uk




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez
On Tue, 17 Aug 1999, Wilfredo Sanchez wrote:

   A group of us at Apple are trying to figure out how to handle  
 situations where a filesystem with foreign user ID's are present.   
 The basic problem is that the user experience using Unix semantics  
 are not really pleasant.  I think some examples would help:

I was thinking about this the other day, while mousting a series of floppy
disks, and it seems to me that what you're looking for, at least for
removable media, is a sort of single-user UFS that says Joe Schmoe owns
this file system. Assuming that neither you nor Joe have accounts on each
other's machines:

0) Non-root users should be able to mount disks.  This really goes without
saying for desktop systems.

1) You mount_suufs his disk with some sort of foreign-user option, and
the system chooses an unused, per device UID and GID, and all the
directories are mapped to that ownership.

2) You copy the files to a world wrx directory, and they all automagically
become foreign ownership.

3) Joe goes to his computer and mounts his disk, and voila, he owns
everything (it's his filesystem after all).

This handles the simple case of just shuffling files around.  If you
wanted more elaborate collaborations, you'd really have to give each other
accounts.  You could monkey around with keeping passwd files and such on
the medium and umapping, but you couldn't copy files from the Zip to the
local FS without future-user-clash.

This also affords Joe more than your normal level of security, assuming he
trusts root on all the systems involved.

Marc.

--
Marc Ramirez - OwnerGreat Big Throbbing Brains
mr...@gbtb.com  http://www.gbtb.com
Our brains throb, so yours won't have to!



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: cvs commit: src/bin/test test.c

1999-08-18 Thread Sheldon Hearn

[Hi-jacked out of cvs-committers  cvs-all]

On Tue, 17 Aug 1999 17:18:53 MST, Brian Feldman wrote:

 green   1999/08/17 17:18:53 PDT
 
   Modified files:
 bin/test test.c 
   Log:
   The new test(1) did not use access() correctly. I don't know why, since
   supposedly it's ksh-derived, and it's not broken in pdksh. I've added
   a test for test running as root: if testing for -x, the file must be
   mode  0111 to get success, rather than just existant.
   
   Reviewed by:chris

What were you actually trying to fix, here?  I didn't see any discussion
of this on hackers, current or bugs, nor in response to my initial
commit message.

Ciao,
Sheldon.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Izaac
On Tue, 17 Aug 1999, Wilfredo Sanchez wrote:

   A group of us at Apple are trying to figure out how to handle  
 situations where a filesystem with foreign user ID's are present.   
[...]
 that he can't read the files, because I have a lamer umask, and as a  
 bonus, I don't have an account on his machine, so the files are owned  
 by some random UID.
[...]
 effectively now Joe's zip disk, he should be able to do as he  
 pleases.  One proposal might be to give the console user the  
 equivalent of root's priveledges on any removeable media he inserts  
 into the machine while he's logged in on the console.  This solves  
[...]
 implications aside for the moment), is that knowing what media is  
 removeable is becoming increasingly difficult.  Hot-swappable drives  
[...]
   So perhaps there needs to be a way to mark a drive as local  
 (perhaps with a host ID of some sort?) and noticing when a volume is  
 foreign that you need to do something special.  Certainly you might  
[...]

This has been tackled by folks distributing via ISO9660+RockRidge.. It's
based on a few assumptions: 

1) It's data specifically tagged for export.
2) If you're giving it to Other Guy, you obviously want him to be able to
   read it and navigate it without impediment (otherwise, you wouldn't
   have put it on there, would you?) 
3) Other Guy is responsible for managing his new files.

So, let's remove the ROM mentality and apply it to our removable media
problem: 

1) The data may or may not be specifically tagged export.

With a ROM, you only decide once what this child of your creativity's
purpose will be in life.  Is it staying home or going abroad?

It would be safe to assume that a very solid majority of users will be
neither familiar with mastering nor happy with having the inflexibility of
being forced to decide at Erase Disk... time (who changed it to that
anyway? :P ) whether this volume is local or exported.

2) You'll still want Other Guy to be able to navigate without impediment.

The default action would be to save ownership/permission information on
media for local use and present a least common denominator view (chown -R
0.0  chmod -R a=rX) for other recipients.  It ought to be transparent,
but otherwise able to be manually fiddled with (sometimes you just don't
want other people to be able to find out your uname is fuckwit1).

So yeah, you'll want to tag your media as MINE.  A superhappyfun-hash of
the hostname and something else ought to make a nice tag.

So far as where to put it depends on the FS.  Take a looksee at
RockRidge's RRIP and SUSP at:
ftp://ftp.ymi.com/pub/rockridge/

Or be slicker with UDF at:
http://www.osta.org/html/ostatech.html#udf

3) Other guy is still responsible for managing his new files.

This can and will get oftly interesting oftly quickly.

a) Other Guy goes to mount the media the originator gave him.  He checks
the superhappyfun-hash ID, which doesn't match his system.  The disk is
considered alien and goes to LCD mode.  One could blindly assume that if
Other Guy was able to mount the media (not necessarily be at console) that
he ought to own everything on it. Reasonable.

b) Other Guy (optionally) has his machine try a little harder to figure
out what's actually going on. It could look at the ownership/permissions
on the media itself, get a feel for what's what and where, then try to
construct a filesystem utopia.  This can, in and of itself, get oftly
intersting oftly quickly.

c) Other Guy (optionally) tweaks things himself.

d) From there? He could designate himself the new originator of the media
by relabeling the source ID to 'OGsuperhappyfun-hash'.  Or, he could store
his own o/p map .. locally or maybe on the media itself?  He could also
remaster the media (fuckwit2).. 

Ohh, what a tangled web we do weave ... :) 

Personally, I like the redesignation.. This could get very expensive,
though, for large volumes and/or frequent system swaps (remap, move,
remap, move, remap, move, remap.)


   As another example, a similar situation often comes up on the net  
 with tar files containing UIDs and GIDs other than zero.

No it doesn't.  If you can't chown, touch, or chmod the extracted file to
match the archived state, you won't.  It's yours with your umask.

___ ___  .   .  ___
 \/  |\  |\ \   
 _\_ /__ |-\ |-\ \__




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Ignatios Souvatzis
On Wed, Aug 18, 1999 at 05:00:48AM -0400, Marc Ramirez wrote:
 
 I was thinking about this the other day, while mousting a series of floppy
 disks, and it seems to me that what you're looking for, at least for
 removable media, is a sort of single-user UFS that says Joe Schmoe owns
 this file system.

our(*) msdos and ados filesystems (at least) do (sort of) this.

Regards,
-is

*) where we = NetBSD


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez
On Wed, 18 Aug 1999, Ignatios Souvatzis wrote:

 On Wed, Aug 18, 1999 at 05:00:48AM -0400, Marc Ramirez wrote:
  
  I was thinking about this the other day, while mousting a series of floppy
  disks, and it seems to me that what you're looking for, at least for
  removable media, is a sort of single-user UFS that says Joe Schmoe owns
  this file system.
 
 our(*) msdos and ados filesystems (at least) do (sort of) this.

Yeah.  That's definitely where I'd start from.  I think the main obstacle
for any *BSD system in the ease-of-use department will be the
must-mount-as-root issue.  I don't know what's involved in getting that to
work properly.  Maybe the best solution is to have some sort of automount
daemon.  That would more than likely work for devices with media detection
(Mac floppys come to mind... :) The devil's in the details...

Marc.

 Regards,
   -is
 
 *) where we = NetBSD
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 


--
Marc Ramirez - OwnerGreat Big Throbbing Brains
mr...@gbtb.com  http://www.gbtb.com
Our brains throb, so yours won't have to!



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Bill Sommerfeld
 Yeah.  That's definitely where I'd start from.  I think the main obstacle
 for any *BSD system in the ease-of-use department will be the
 must-mount-as-root issue.  

huh?  NetBSD (at least) allows non-root mounts (forced to
nodev,nosuid, ..) if the user owns the mount point and has appropriate
access to the underlying device..

I thought that was a 4.4Lite feature..

- Bill






To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Thomas David Rivers
I had a thought on this

It seems you are trying to provide the floppy model that users
currently have with their PCs.

User A writes the floppy,  User B can read it and do whatever he 
wants...

(I know this is Apple - but I'll stick to MSDOS for the discussion,
and floppy indicates any removable media.)

The reason for this is that MSDOS filesystems don't keep any
user credentials.   So, use  B can read anything on any floppy
he can find.

Wouldn't creating a file system that didn't support user
credentials solve your problem?   Format the floppy in that
file system and hand it to user B.   When user B mounts it,
he can do whatever he wants.   User A is aware of how the
floppy was created, as presumably some special step is
required to create the discard credential file system
on the floppy.   

Perhaps, such a file system could even be a UFS with a 
special marker somewhere?   Then, this marker could be twiddled 
after the fact.   For example,  user A formats and makes
a new UFS file system on the floppy, and copies the files
over.   Marks it as having no credentials (twiddles the bit)
and hands it to user B.   User B mounts it, with a regular
UFS mount - but because the magic bit is twiddled GID
and UID are ???  (here's where things break down, just what
do you use for those?  root/nobody/user's giduid?)

Just some thoughts...

- Dave Rivers -


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez

[ CC's trimmed ]

On Wed, 18 Aug 1999, Bill Sommerfeld wrote:

  Yeah.  That's definitely where I'd start from.  I think the main obstacle
  for any *BSD system in the ease-of-use department will be the
  must-mount-as-root issue.  
 
 huh?  NetBSD (at least) allows non-root mounts (forced to
 nodev,nosuid, ..) if the user owns the mount point and has appropriate
 access to the underlying device..

Oh!  I was under the impression that it just didn't work, even with
correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
time!

Marc.

 I thought that was a 4.4Lite feature..
 
   - Bill


--
Marc Ramirez - OwnerGreat Big Throbbing Brains
mr...@gbtb.com  http://www.gbtb.com
Our brains throb, so yours won't have to!




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread David Malone
On Wed, Aug 18, 1999 at 07:39:11AM -0400, Marc Ramirez wrote:
 Oh!  I was under the impression that it just didn't work, even with
 correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
 with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
 time!

You have to turn it on with a sysctl: sysctl -w vfs.usermount=1 I
think.

David.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Alban Hertroys
On 18 Aug, Marc Ramirez wrote:

 Oh!  I was under the impression that it just didn't work, even with
 correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
 with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
 time!
 
 Marc.

No miracle, the mount command has uid 0 hardcoded in the source where
you are checked if you are allowed to use the mount command. 

I've been thinking of a neat way to re-organize that code myself for
some time now, and thought I had come up with a solution (It's the
reason I subscribed to this list in the first place).

With the current discussion, I figure it has some major shortcomings. It
adds some things too, though, like the permissions to audio devices,
etc.

Anyway, I wrote a paper about it that I can post here if anybody is
interested. In that case, which format s liked best: plain text, TeX or
postscript? I assume the first.

-- 
Alban Hertroys.
http://wit401310.student.utwente.nl
==
If there is a here-after,
then there are much more people dead than alive.
Even that much more that the number of living people
is insignificant in comparison to the dead ones.
Thus it is safe to say that we don't exist.



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Wolfgang Solfrank
Hi,

 huh?  NetBSD (at least) allows non-root mounts (forced to
 nodev,nosuid, ..) if the user owns the mount point and has appropriate
 access to the underlying device..
 
 I thought that was a 4.4Lite feature..

Yes, it was part of 4.4Lite2.

And I still have the discussion from 1994 between Chris Demetriou,
Kirk McKusick and myself which triggered this feature.  (For the record,
(the equivalent of) c...@netbsd.org was CC'ed on this discussion, and
Theo kicked in later, too).

Back then, I was arguing to use the mounter's uid, if it wasn't root,
as owner for all files (well, we were discussing this more or less with
respect to msdosfs only, so you have to set some uid as the owner of files
anyway), but Chris was arguing that the man in front of the box should
be able to mount some floppy for some other guy and give him access to
his files.

Actually substituting the mounter for the owner of the files should be
quite easy to implement (since most filesystems now use the generic vaccess
routine for access checking, it wouldn't even require changes to most
filesystems), as the mounter is available in the mount structure anyway.
(It is checked on an unmount, so only the mounter (and root, of course)
can unmount a filesystem).  However, if we'd make it an option to the
generic mount code, it would probably be a good idea to make the
substitution uid and gid extra arguments to the mount command for the
reasons Chris mentioned back then.

Ciao,
Wolfgang

PS: BTW, shouldn't this be on tech-k...@netbsd.org instead of
tech-userlevel?
-- 
w...@tools.de (Wolfgang Solfrank, TooLs GmbH)   +49-228-985800


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message pine.sol.3.96.990816105106.27345h-100...@marcy.nas.nasa.gov, Bill 
Studenmund writes:
On Sat, 14 Aug 1999, Terry Lambert wrote:

  I am currently conducting a thorough study of the VFS subsystem
  in preparation for an all-out effort to port SGI's XFS filesystem to
  FreeBSD 4.x at such time as SGI gives up the code.  Matt Dillon
  has written in hackers- that the VFS subsystem is presently not
  well understood by any of the active kernel code contributers and
  that it will be rewritten later this year.  This is obviously of great
  concern to me in this port.
 
 It is of great concern to me that a rewrite, apparently because of
 non-understanding, is taking place at all.

That concerns me too. Many aspects of the 4.4 vnode interface were there  
for specific reasons. Even if they were hack solutions, to re-write them  
because of a lack of understanding is dangerous as the new code will
likely run into the same problems as before. :-)

Matt doesn't represent the FreeBSD project, and even if he rewrites
the VFS subsystem so he can understand it, his rewrite would face
considerable resistance on its way into FreeBSD.  I don't think
there is reason to rewrite it, but there certainly are areas
that need fixing.

  The use of the vfs_default to make unimplemented VOP's
  fall through to code which implements function, while well
  intentioned, is misguided.

I beg to differ.  The only difference is that we pass through
multiple layers before we hit the bottom of the stack.  There is
no loss of functionality but significant gain of clarity and
modularity.

Adding a new VOP entails the same thing as it has always done.

 3.   The filesystem itself is broken for Y2038
 
  The space which was historically reserved for the Y2038 fix
  (a 64 bit time_t) was absconeded with for subsecond resoloution.
 
  This change should be reverted, and fsck modified to re-zero
  the values, given a specific argument.

That would break make(1) on contemporary machines.

One other suggestion I've heard is to split the 64 bits we have for time
into 44 bits for seconds, and 20 bits for microseconds. That's more than
enough modification resolution, and also pushes things to past year
500,000 AD. Versioning the indoe would cover this easily.

This would be misguided, and given the current speed of evolution
lead to other problems far before 2038.

Both struct timespec and struct timeval are major mistakes, they
make arithmetic on timestamps an expensive operation.  Timestamps
should be stored as integers using an fix-point notations, for
instance 64bits with 32bit fractional seconds (the NTP timestamp),
or in the future 128/48.

Extending from 64 to 128bits would be a cheap shift and increased
precision and range could go hand in hand.

If we don't want to extend the size of the timestamps before 2038,
(and we should not only look at filesystems here), then the correct
fix will be to move the epoch and use the inode version to mark
this fact.

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Mark Huizer
Hi there,

I had a look recently at the code for one of the kernel modules that VMWare
requires (driver-only.tar), and it looks like something that should be
portable to FreeBSD, although there is some messy stuff in it (assembly
that seems to be using Linux specific stuff, brrr..) But anyway: it
looks feasable.

Is anyone already working on this, or are some people interested in
helping with this?

As far as I can see, the linux emulation is good enough to run the
vmware program, all you need to do is implement /dev/vmmon and
/dev/vmnet, given the fact that the code is written really unportable,
so there is some rewriting to be done. Then with the KLD's
vmmon,vmnet and linux you should be able to run vmware.

Mark
-- 
 Mark Huizer   -   mark.hui...@nl.origin-it.com   -   x...@xaa.iae.nl

 Reality is an illusion caused by lack of alcohol   


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: lpd security check for changed-file vs NFS

1999-08-18 Thread David Scheidt
On Tue, 17 Aug 1999, Garance A Drosihn wrote:

 At 6:37 PM -0700 8/17/99, Matthew Dillon wrote:
 If you removed the stat test, I would simply get rid of the -s
 option entirely - require that all files be queued to the print
 spool.
 
 The administration would kill me.  I would prefer to avoid that.
 
 (note that the check isn't completely removed, it's only nullified
 for NFS-mounted files.  We use AFS for most things here, so the vast

Couldn't you turn it off only for NFS mounted files?  

David scheidt


 
 Any advice on how to kick AIX so the st_dev+st_ino check will work
 right is also welcome.  It baffles me why AIX does things the way it
 does.  It kinda looks like the values it uses are pointers to some

The joke about AIX is that it was created by aliens who were given the 
UNIX documentation, but no example system.  I have seen very little that
suggests this to be untrue.  



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



[Fwd: First FreeMWare release!]

1999-08-18 Thread Darren WIebe
Hello:

I thought that some of you might be interested in this.  If this message
should not have been posted to this list please let me know.

Darren Wiebe
dkwi...@hagenhomes.com---BeginMessage---
Hey folks,

It's been awhile.  Sorry, I've been busy working on other
fronts, but I did have time to put together a first go
at the virtualization framework we need for FreeMWare.

  ftp://ftp.freemware.org/pub/freemware/fmw-990817b.tar.gz

Which if you're having problems, is really just:

  ftp://bochs.com/pub/freemware/fmw-990817b.tar.gz

Attached is the fmw-990817b.README that goes along with it.

-KevinThis is the beginnings to the virtualization framework that we
need for FreeMWare.  I have compiled it and run it on:

  Linux 2.0.36   (came with Red Hat 5.2)
  Linux 2.2.5-15 (came with Red Hat 6.0)

I've made an attempt to keep things modularized in
respect to the host OS.  Anything OS specific should
be put in kernel/host-xyz.c or include/host-xyz.h.

This code is extremely experimental, and will likely
result in a system crash, and who knows what other
ill effects.  Don't run it on a system with any
important data on it, and make liberal user of
the sync command!  Expect to have to use the power
button.

We have to clean up the ioctl interface, using
macros instead of passing raw numbers I pulled out
of a hat, etc, etc.  This was my first Linux kernel
driver, so don't assume I did anything correctly. :^)

-Kevin



Directions for install etc.
---

Go into the user directory and type make.

  user cd user
  user make

Go into the kernel directory and type make.

  user cd ../kernel
  user make

Make the device node for freemware, as root user:

  root mknod /dev/freemware0 c 63 0

Fire up the kernel module:

  root insmod fmw.o

As a regular user, fire up the user program:

  user cd ../kernel
  user ./user # defaults to 1 iteration
 -or
  user ./user 10  # any number of iterations here

Whenever you recompile the kernel stuff, or want to
get rid of the kernel module, remove the old
kernel module first.  As root:

  root rmmod fmw


Each time the host switches to the monitor/guest
environment and runs that context.  Normally, execution
will continue in that context until a hardware interrupt
occurs or other exception.  The monitor interrupt handler
switches back to the host context to handle the interrupt.
The monitor/guest context will not resume execution until
the next ioctl() call from the user program.

NOTE:
  By default, I have a macro called TEST_MODE set to 1,
  in kernel/monitor.c.  In this mode, rather than waiting until
  an interrupt hits, control will be passed immediately back
  to the the host.  This is to test that the switching back/forth
  between host/monitor+guest works, without interrupts.

  I have not yet got interrupts redirection working properly.
  If you set TEST_MODE to 0 and recompile, an interrupt seems to
  cause everything to switch back to the host context, but
  then the system hangs after a short period of time,
  or causes a kernel oops.  I have not tracked this down
  yet.  It does register in /proc/freemware, that a redirection
  of an IRQ0 occurred.  Something is getting screwed up with
  interrupts in the kernel perhaps, after the software interrupt
  call to invoke the host kernel interrupt handler for the
  hardware interrupt we received while in guest context.

  Any ideas on what the problem is?
---End Message---


Re: Need some advice regarding portable user IDs

1999-08-18 Thread Michael C. Richardson

 Wilfredo == Wilfredo Sanchez wsanc...@apple.com writes:
Wilfredo   I think the desired behaviour would be that since this is  
Wilfredo effectively now Joe's zip disk, he should be able to do as he  
Wilfredo pleases.  One proposal might be to give the console user the  
Wilfredo equivalent of root's priveledges on any removeable media he 
inserts  

  Right now, with MSDOS floppies, with no userids, the user owning the
mount point gets his userid applied to the entire disk. This allows me to
mount my floppies, etc. on mount points that I own, and I own all
the resulting files. I think you want the same thing as an option for 
UFS mounts.

Wilfredo Presumably the console user is the one fiddling with the external 
 
Wilfredo media.

  I don't think this is entirely true, and isn't a useful or enforceable
restriction. 

Wilfredo   As another example, a similar situation often comes up on the 
net  
Wilfredo with tar files containing UIDs and GIDs other than zero.

  Only with SYSV chown semantics that allow non-root to make files not
owned by them.

Wilfredo   So perhaps there needs to be a way to mark a drive as local  
Wilfredo (perhaps with a host ID of some sort?) and noticing when a volume 
is  
Wilfredo foreign that you need to do something special.  Certainly you 
might  
Wilfredo want to ignore setuid bits, for starters.  This could simply be  
Wilfredo something like fstab, which lists the local drives, and 
everything  
Wilfredo else isn't considered local.

  This is solved by having the nouid or somesuch thing add to /etc/fstab
by the admin who knows which ones should be trusted. Linux provides user
to get the behaviour that we get for free.

Wilfredo   Has anyone dived into this area already and have some 
experience  
Wilfredo with it?  It's confusing me pretty good.

  See what ATT did with RFS. This may be a negative example (i.e. don't do
this).

   :!mcr!:|  Cow#1: Are you worried about getting Mad Cow Disease?
   Michael Richardson |  Cow#2: No. I'm a duck.
 Home: A 
HREF=http://www.sandelman.ottawa.on.ca/People/Michael_Richardson/Bio.html;m...@sandelman.ottawa.on.ca/A.
 PGP key available.




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Darren WIebe
Hello:

One other thing that you might be interested in is the fact that Freemware
has its first release out.  ***It is not nearly complete yet***  They have
something out though, and it needs people to work on the code for FreeBSD.
Right now they are working mostly on the Linux stuff where it is OS
sensitive.  However, it would be appreciated if somebody wanted to work on the
FreeBSD specific code.

Darren Wiebe

 I had a look recently at the code for one of the kernel modules that VMWare
 requires (driver-only.tar), and it looks like something that should be
 portable to FreeBSD, although there is some messy stuff in it (assembly
 that seems to be using Linux specific stuff, brrr..) But anyway: it
 looks feasable.

 Is anyone already working on this, or are some people interested in
 helping with this?



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Chris Dillon
On Wed, 18 Aug 1999, Mark Huizer wrote:

 Hi there,
 
 I had a look recently at the code for one of the kernel modules that VMWare
 requires (driver-only.tar), and it looks like something that should be
 portable to FreeBSD, although there is some messy stuff in it (assembly
 that seems to be using Linux specific stuff, brrr..) But anyway: it
 looks feasable.
 
 Is anyone already working on this, or are some people interested in
 helping with this?
 
 As far as I can see, the linux emulation is good enough to run the
 vmware program, all you need to do is implement /dev/vmmon and
 /dev/vmnet, given the fact that the code is written really unportable,
 so there is some rewriting to be done. Then with the KLD's
 vmmon,vmnet and linux you should be able to run vmware.

WooHoo!  Well, I can't celebrate quite yet, but I'll definately be
buying a copy of VMWare if anyone gets this to work (WAY above my
head, so no help from me, sorry).  More than likely, many people other
than myself would also buy a copy of VMWare for Linux just to run
under FreeBSD, so maybe you can convince VMWare, Inc. to give you or
whoever else decides to tackle this some monetary compensation?  It
would also help to bring us a step closer to a native FreeBSD version
of VMWare, since some (most?) of the work would already be done for
them (the porting of vmmon and vmnet).



-- Chris Dillon - cdil...@wolves.k12.mo.us - cdil...@inter-linc.net
   FreeBSD: The fastest and most stable server OS on the planet.
   For Intel x86 and Alpha architectures (SPARC under development).
   ( http://www.freebsd.org )

   One should admire Windows users.  It takes a great deal of
courage to trust Windows with your data.



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



async v. sync v. default mode on ufs

1999-08-18 Thread Larry Lile

It was pointed out to me by a co-worker that FreeBSD has actually
three modes of operation for mounting ufs filesystems.  Could someone
please explain to me, and him, the differences between the three.

Also does anyone knows how these compare to sync and async on Linux?

Just a btw, you seem to be able to set sync and async on a filesystem
at the same time.  What gives?

dlane# mount -u -o sync,async,noatime /var dlane-printer# mount
/dev/wd0s1a on / (local, noatime, synchronous, writes: sync 405 async 23)
/dev/wd0s1e on /usr (local, noatime, synchronous, writes: sync 118365 
async 83882) 
/dev/wd0s1f on /var (asynchronous, local, noatime, synchronous, writes: 
sync 93 async 216) procfs on /proc (local)
dlane#

/var looks questionable...

I would never try that on purpose, but it just kinda happened, and when I 
looked at it I though wow that's broken!

Larry Lile
l...@stdio.com



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Question(s) regarding sys/vm/swap_pager.c

1999-08-18 Thread Bosko Milekic

This may seem to be a ridiculous question... (sorry)

I have a question specifically regarding sys/vm/swap_pager.c,
I'm not very familiar with sys/vm/*, but I've noticed that the value of
the static int no_swap_space (which is initially set to 1) is almost never
checked. The only times that this value appears to be changed is during
checks of vm_swap_size in swap_pager_putpages and swap_pager_copy.

Is this value actually ever checked to determine anything? What exactly is
its purpose?

Thanks,
Bosko.




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Ronald G. Minnich


the only portable user ids are names as strings. you can kludge and kludge
but at some point the kludges will pile up too high, fall over, and hurt
somebody. how many new options did we see proposed in the last 12 hours
for this problem?

ron



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: async v. sync v. default mode on ufs

1999-08-18 Thread Larry Lile

Sorry, I blew the CC: line...

On Wed, 18 Aug 1999, Larry Lile wrote:

 
 It was pointed out to me by a co-worker that FreeBSD has actually
 three modes of operation for mounting ufs filesystems.  Could someone
 please explain to me, and him, the differences between the three.
 
 Also does anyone knows how these compare to sync and async on Linux?
 
 Just a btw, you seem to be able to set sync and async on a filesystem
 at the same time.  What gives?
 
 dlane# mount -u -o sync,async,noatime /var dlane-printer# mount
 /dev/wd0s1a on / (local, noatime, synchronous, writes: sync 405 async 23)
 /dev/wd0s1e on /usr (local, noatime, synchronous, writes: sync 118365 
 async 83882) 
 /dev/wd0s1f on /var (asynchronous, local, noatime, synchronous, writes: 
 sync 93 async 216) procfs on /proc (local)
 dlane#
 
 /var looks questionable...
 
 I would never try that on purpose, but it just kinda happened, and when I 
 looked at it I though wow that's broken!
 
 Larry Lile
 l...@stdio.com
 
 
 
 To Unsubscribe: send mail to majord...@freebsd.org
 with unsubscribe freebsd-hackers in the body of the message
 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Question(s) regarding sys/vm/swap_pager.c

1999-08-18 Thread Matthew Dillon
:This may seem to be a ridiculous question... (sorry)
:
:I have a question specifically regarding sys/vm/swap_pager.c,
:I'm not very familiar with sys/vm/*, but I've noticed that the value of
:the static int no_swap_space (which is initially set to 1) is almost never
:checked. The only times that this value appears to be changed is during
:checks of vm_swap_size in swap_pager_putpages and swap_pager_copy.
:
:Is this value actually ever checked to determine anything? What exactly is
:its purpose?
:
:Thanks,
:Bosko.

Under -STABLE no_swap_space appears to handle the startup case where
swap has not yet been initialized.  It prevents paging to swap from
occuring until the swap system is both initialized and assigned at
least one swap partition.

Under -CURRENT this variable does not exist.  The vm/swap_pager.c
in STABLE has been depreciated - that is, it has been completely
rewritten in CURRENT.

-Matt
Matthew Dillon 
dil...@backplane.com


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Mark Huizer
On Wed, Aug 18, 1999 at 08:10:28AM -0600, Darren WIebe wrote:
 Hello:
 
 One other thing that you might be interested in is the fact that Freemware
 has its first release out.  ***It is not nearly complete yet***  They have
 something out though, and it needs people to work on the code for FreeBSD.
 Right now they are working mostly on the Linux stuff where it is OS
 sensitive.  However, it would be appreciated if somebody wanted to work on the
 FreeBSD specific code.

I think that for my purpose it might be interesting, but taking way too
long to become productive enough. I'm one of the big group of You must
run Outlook!
And I can probably arrange for the license, so no problem with using
VMWare if possible. I'd prefer using FreeBSD though

mark

-- 
 Mark Huizer   -   mark.hui...@nl.origin-it.com   -   x...@xaa.iae.nl

 Faith is good, but skepticism is better (Guiseppe Verdi)   


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Onstream?

1999-08-18 Thread Matthew Jacob


 In message 19990817230910.a6...@netmonger.net Christopher Masto writes:
 : Do they still not allow you to release the specs?  How is the code
 : going to become part of FreeBSD if they won't allow its release?
 
 I didn't sign an NDA to get my copy of the spec or the hardware...

Neither did I. But I was requested by Jim Jonez of Onstream to not release
the specs.

 
 I also don't have time to devote to the onstream IDE project.  I'm
 looking for someone with the kernel skills and track record to take
 over for me.

I thought Soren was doing it...




To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Onstream?

1999-08-18 Thread Matthew Jacob

Oh- to give my status for the SCSI version: I lost time because the day
and ahlf I had allocated to actually work on this got blown away by -current
instabilities. I'll try and get another shot at it Sunday (*my* work
schedule is such that right now that I don't have an employer I can stick
this work for.)





To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Onstream?

1999-08-18 Thread Warner Losh
In message pine.bsf.4.05.9908180849090.79233-100...@semuta.feral.com Matthew 
Jacob writes:
: Neither did I. But I was requested by Jim Jonez of Onstream to not release
: the specs.

Same here...  Just pointing out that OnStream is being cooperative.

:  I also don't have time to devote to the onstream IDE project.  I'm
:  looking for someone with the kernel skills and track record to take
:  over for me.
: 
: I thought Soren was doing it...

He is, but since I also have hardware and docs to contribute to the
effort and since I didn't have time, I thought I'd not horde the
hardware if there was someone out there that did have the time and
would be willing and able to help out.

Warner



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: Need some advice regarding portable user IDs

1999-08-18 Thread Marc Ramirez
On Wed, 18 Aug 1999, David Malone wrote:

 On Wed, Aug 18, 1999 at 07:39:11AM -0400, Marc Ramirez wrote:
  Oh!  I was under the impression that it just didn't work, even with
  correct perms, but I use FreeBSD.  Lemme try it... Can't mount, even
  with 0666 on /dev/fd0.  Maybe I'm being stupid.  Wouldn't be the first
  time!
 
 You have to turn it on with a sysctl: sysctl -w vfs.usermount=1 I
 think.

So it is.

Thanks.

Marc.

--
Marc Ramirez - OwnerGreat Big Throbbing Brains
mr...@gbtb.com  http://www.gbtb.com
Our brains throb, so yours won't have to!



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: VMWare: porting kernel modules to FreeBSD

1999-08-18 Thread Josef Karthauser
On Wed, Aug 18, 1999 at 09:16:29AM -0500, Chris Dillon wrote:
 On Wed, 18 Aug 1999, Mark Huizer wrote:
 
  Hi there,
  
  I had a look recently at the code for one of the kernel modules that VMWare
  requires (driver-only.tar), and it looks like something that should be
  portable to FreeBSD, although there is some messy stuff in it (assembly
  that seems to be using Linux specific stuff, brrr..) But anyway: it
  looks feasable.
  
  Is anyone already working on this, or are some people interested in
  helping with this?
  
  As far as I can see, the linux emulation is good enough to run the
  vmware program, all you need to do is implement /dev/vmmon and
  /dev/vmnet, given the fact that the code is written really unportable,
  so there is some rewriting to be done. Then with the KLD's
  vmmon,vmnet and linux you should be able to run vmware.
 
 WooHoo!  Well, I can't celebrate quite yet, but I'll definately be
 buying a copy of VMWare if anyone gets this to work (WAY above my
 head, so no help from me, sorry).  More than likely, many people other
 than myself would also buy a copy of VMWare for Linux just to run
 under FreeBSD, so maybe you can convince VMWare, Inc. to give you or
 whoever else decides to tackle this some monetary compensation?  It
 would also help to bring us a step closer to a native FreeBSD version
 of VMWare, since some (most?) of the work would already be done for
 them (the porting of vmmon and vmnet).

We will _definitely_ buy VMWare if we can run it on a FreeBSD host
system - I believe that I've told them so in the past.

Joe
-- 
Josef KarthauserFreeBSD: How many times have you booted today?
Technical Manager   Viagra for your server (http://www.uk.freebsd.org)
Pavilion Internet plc.  [...@pavilion.net, j...@uk.freebsd.org, j...@tao.org.uk]


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: RE: Need some advice regarding portable user IDs

1999-08-18 Thread Wilfredo Sanchez
|   when new media is available and it will try to mount it.  The  
present
|   behaviour in Mac OS X Server is that everything mounted this  
way is
|   trusted, though the Finder should be requesting nosetuid; I should   
|   check that.  It's also possible that the kernel will number  
drives in
|   a different order (eg. /dev/sd0a this boot might be /dev/sd1a next   
|   boot), particularly if you are shuffling drives around. (Remember   
|   that hot-swap complicates this.)  So a string like /dev/sd0a in   
|   fstab is fragile, and it works out better if we keep that  
information
|   on the mounted media rather than on the root volume.
|
| What happens with conflicting names?

  Append _1, _2, etc.

-Fred


--
   Wilfredo Sanchez, wsanc...@apple.com
Apple Computer, Inc., Core Operating Systems / BSD
  Technical Lead, Darwin Project
   1 Infinite Loop, 302-4K, Cupertino, CA 95014



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: OpenLDAP tests?

1999-08-18 Thread Jaye Mathisen

Found it.

This let the tests run fine for me.

===
RCS file: /repo/OpenLDAP/pkg/ldap/servers/slapd/daemon.c,v
retrieving revision 1.14.2.7.2.8
retrieving revision 1.14.2.7.2.9
diff -u -r1.14.2.7.2.8 -r1.14.2.7.2.9
--- servers/slapd/daemon.c  1999/03/02 18:30:05 1.14.2.7.2.8
+++ servers/slapd/daemon.c  1999/07/20 05:10:35 1.14.2.7.2.9
@@ -390,7 +390,6 @@
 void
 slap_set_shutdown( int sig )
 {
-   Debug( LDAP_DEBUG_ANY, slapd got shutdown signal %d\n, sig, 0, 0
);
slapd_shutdown = 1;
ldap_pvt_thread_kill( listener_tid, LDAP_SIGUSR1 );
 
@@ -401,8 +400,6 @@
 void
 slap_do_nothing( int sig )
 {
-   Debug( LDAP_DEBUG_TRACE, slapd got do_nothing signal %d\n, sig,
0, 0 );
-
/* reinstall self */
(void) SIGNAL( sig, slap_do_nothing );
 }







On Wed, 18 Aug 1999, Steven Ames wrote:

 Thanks! I'll check the site (but would appreciate your sending it to me
 also).
 
 -Steve
 
 On Tue, 17 Aug 1999, Jaye Mathisen wrote:
 
  
  There is a patch that fixes this, I found it, and submitted a bug report
  on their web page.
  
  I don't have it handy, but if you go to www.openldap.org and to their
  faq-o-matic, and it should be in there.
  
  I'll see if I can find it and send it to you in the mean time.
  
  On Tue, 17 Aug 1999, Steven Ames wrote:
  
   
   I've got a project at work where using LDAP would make my life
   much simpler. So... on my home PC (running FBSD 4.0-CURRENT 8.2.99)
   I installed openldap from the ports collection (V1.2.3...ports cvsuped
   about an hour ago from cvsup5.freebsd.org).
   
   I cd into the test area /usr/ports/work/ldap/tests and type 'make'.
   Looking good... until... on test0003-search it stops. It just holds.
   My CPU is up to 99% and its chewed up 18 minutes of CPU before I hit
   Ctrl-C and stopped it. I did a 'make clean' moved scripts/test0003-seach
   to scripts/test0009-search (so it would run last) and tried again.
   Same results on test0004-modify. *sigh*
   
   Do the tests just not run? I didn't dare to just go ahead and use it
   as I'm not familiar enough with LDAP to judge if a failure is my fault
   or a system problem. I'd feel a lot safer if the tests all passed so that
   if anything goes wrong from that point I can call it user error.
   
   Anyone?
   
   -Steve
   
   
   To Unsubscribe: send mail to majord...@freebsd.org
   with unsubscribe freebsd-hackers in the body of the message
   
  
 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert
   I'm not familiar with the VFS_default stuff. All the vop_default_desc
   routines in NetBSD point to error routines.
  
  In FreeBSD, they now point to default routines that are *not* error
  routines.  This is the problem.  I admit the change was very well
  intentioned, since it made the code a hell of a lot more readable,
  but choosing between readable and additional function, I take function
  over form (I think the way I would have fixed the readability is by
  making the operations that result in the descriptor set for a mounted
  FS instance be both discrete, and named for their specific function).
 
 As I recall most of FBSD's default routines are also error routines, if
 the exceptions were a problem it would would be trivial to fix.

You would have to de-collapse several VOP lists that have been
pre-collapsed.  The pre-collapse is also an issue for stacking,
since the collapse is supposed to be late bound to the stacking
operation itself.  This lets you revisit it later when you need
to add a new VOP into the system, so that there's a NULL pointer
in the VOP slot for older FS's, in case you stack on top of them.
This is particularly true of an FS stacked on an FS stacked on a
proxy layer.


 I think fixing resource allocation/deallocation for things like vnodes,
 cnbufs, and locks are a higher priority for now.  There are examples such
 as in detached threading where it might make sense for the detached child
 to be responsible for releasing resources allocated to it by the parent,
 but in stacking this model is very messy and unnatural.  This is why the
 purpose of VOP_ABORTOP appears to be to release cnbufs but this is really
 just an ugly side effect.  With stacking the code that allocates should be
 the code that deallocates. Substitute, code  with layer to be more
 correct. 

Yes.  That's actually maintenance, not rewrite, and I think it's
very important to address.  I'm rather pleased with the way the
NFS stuff has turned out (so far), and I was the one calling for
a return to first principles (i.e. a rewrite from the specification).


 I fixed a lot of the vnode and locking cases, unfortunately the ones that
 remain are probably ugly cases where you have to reacquire locks that had
 to be unlocked somewhere in the executing layer.  See VOP_RENAME for an
 example.  Compare the number of WILLRELEs in vnode_if.src in FreeBSD and
 NetBSD, ideally there'd be none.

The way I handled this in the rename case on my hacking box was by
adding a flag to the namei() call.  You could call this flag the
same as WILLRELE, but it had inverse semantics.

Really, this is another issue of reflexivity being absent from an
interface.  You really don't want asymmetric interfaces (VOP_LOCK
is an example, in many cases, based on internal use in the FFS).


Terry Lambert
te...@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message 199908181716.kaa12...@usr02.primenet.com, Terry Lambert writes:
   I'm not familiar with the VFS_default stuff. All the vop_default_desc
   routines in NetBSD point to error routines.
  
  In FreeBSD, they now point to default routines that are *not* error
  routines.  This is the problem.  I admit the change was very well
  intentioned, since it made the code a hell of a lot more readable,
  but choosing between readable and additional function, I take function
  over form (I think the way I would have fixed the readability is by
  making the operations that result in the descriptor set for a mounted
  FS instance be both discrete, and named for their specific function).
 
 As I recall most of FBSD's default routines are also error routines, if
 the exceptions were a problem it would would be trivial to fix.

You would have to de-collapse several VOP lists that have been
pre-collapsed.

You are talking gibberish here.  Please show code where this is
a problem.

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Bill Studenmund
On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:

 In message pine.sol.3.96.990816105106.27345h-100...@marcy.nas.nasa.gov, 
 Bill 
 Studenmund writes:
 On Sat, 14 Aug 1999, Terry Lambert wrote:
 
 Matt doesn't represent the FreeBSD project, and even if he rewrites
 the VFS subsystem so he can understand it, his rewrite would face
 considerable resistance on its way into FreeBSD.  I don't think
 there is reason to rewrite it, but there certainly are areas
 that need fixing.

Whew! That's reasuring. I agree there are things which need fixing. It'd
be nice if both NetBSD and FreeBSD could fix things in the same way.

 The use of the vfs_default to make unimplemented VOP's
 fall through to code which implements function, while well
 intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

If I understood the issue, it is that the leaf fs's (the bottom ones)
would use a default routine for non-error functionality. I think Terry's
point (which I agree with) was that a leaf fs's default routine should
only return errors.

  3. The filesystem itself is broken for Y2038
 One other suggestion I've heard is to split the 64 bits we have for time
 into 44 bits for seconds, and 20 bits for microseconds. That's more than
 enough modification resolution, and also pushes things to past year
 500,000 AD. Versioning the indoe would cover this easily.
 
 This would be misguided, and given the current speed of evolution
 lead to other problems far before 2038.
 
 Both struct timespec and struct timeval are major mistakes, they
 make arithmetic on timestamps an expensive operation.  Timestamps
 should be stored as integers using an fix-point notations, for
 instance 64bits with 32bit fractional seconds (the NTP timestamp),
 or in the future 128/48.

I like that idea.

One thing I should probably mention is that I'm not suggesting we ever do
arighmetic on the 44/20 number, just we store it that way. struct inode
would contain time fields in whatever format the host prefers, with the
44/20 stuff only being in struct dinode. Converting from 44/20 would only
happen on initial read. Math would happen on the host format version. :-)

If time structures go to 64/32 fixed-point math, then my suggestion can be
re-phrased as storing 44.20 worth of that number in the on-disk inode.

 Extending from 64 to 128bits would be a cheap shift and increased
 precision and range could go hand in hand.

I doubt we need more than 64 bit times. 2^63 seconds works out to
292,279,025,208 years, or 292 (american) billion years. Current theories
put the age of the universe at I think 12 to 16 billion years. So 64-bit
signed times in seconds will cover from before the big bang to way past
any time we'll be caring about. :-)

Take care,

Bill



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message pine.sol.3.96.990818101005.14430b-100...@marcy.nas.nasa.gov, Bill 
Studenmund writes:

Whew! That's reasuring. I agree there are things which need fixing. It'd
be nice if both NetBSD and FreeBSD could fix things in the same way.

Well, that still remains to be seen...

The use of the vfs_default to make unimplemented VOP's
fall through to code which implements function, while well
intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

If I understood the issue, it is that the leaf fs's (the bottom ones)
would use a default routine for non-error functionality. I think Terry's
point (which I agree with) was that a leaf fs's default routine should
only return errors.

I beg to differ.  It is far more likely, in my mind, that you will
want to handle a currently existing, unimplemented VOP than add a
new one.  Using the default for all unimplemented VOPs makes this
possible, using the same logic which makes adding a VOP possible.

Go back and review the diffs from when I did this, and my other
argument why this is a good idea should be obvious.

I doubt we need more than 64 bit times. 2^63 seconds works out to
292,279,025,208 years, or 292 (american) billion years. Current theories
put the age of the universe at I think 12 to 16 billion years. So 64-bit
signed times in seconds will cover from before the big bang to way past
any time we'll be caring about. :-)

But we cannot do time in seconds resolution, we need to resolve at least
the cpu clock frequency, which right now is approaching 1GHz (30bit!)

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Nate Williams
  Both struct timespec and struct timeval are major mistakes, they
  make arithmetic on timestamps an expensive operation.  Timestamps
  should be stored as integers using an fix-point notations, for
  instance 64bits with 32bit fractional seconds (the NTP timestamp),
  or in the future 128/48.
...
 
  Extending from 64 to 128bits would be a cheap shift and increased
  precision and range could go hand in hand.
 
 I doubt we need more than 64 bit times. 2^63 seconds works out to
 292,279,025,208 years, or 292 (american) billion years.

I think Poul's point is that in the future seconds is probably way too
coarse grained.  Computer's are getting faster all the time, and in the
future we may need 64 seconds, plus an additional 64 bits for the
fractions of a second, which will be necessary for accurate timekeeping.




Nate


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Bill Studenmund
On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:

 In message pine.sol.3.96.990818101005.14430b-100...@marcy.nas.nasa.gov, 
 Bill Studenmund writes:
 
 Whew! That's reasuring. I agree there are things which need fixing. It'd
 be nice if both NetBSD and FreeBSD could fix things in the same way.
 
 Well, that still remains to be seen...

:-)

 I doubt we need more than 64 bit times. 2^63 seconds works out to
 292,279,025,208 years, or 292 (american) billion years. Current theories
 put the age of the universe at I think 12 to 16 billion years. So 64-bit
 signed times in seconds will cover from before the big bang to way past
 any time we'll be caring about. :-)

I was unclear. I was refering to the seconds side of things. Sub-second
resolution would need other bits.

Take care,

Bill



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message 199908181737.laa03...@mt.sri.com, Nate Williams writes:
  Both struct timespec and struct timeval are major mistakes, they
  make arithmetic on timestamps an expensive operation.  Timestamps
  should be stored as integers using an fix-point notations, for
  instance 64bits with 32bit fractional seconds (the NTP timestamp),
  or in the future 128/48.
...
 
  Extending from 64 to 128bits would be a cheap shift and increased
  precision and range could go hand in hand.
 
 I doubt we need more than 64 bit times. 2^63 seconds works out to
 292,279,025,208 years, or 292 (american) billion years.

I think Poul's point is that in the future seconds is probably way too
coarse grained.  Computer's are getting faster all the time, and in the
future we may need 64 seconds, plus an additional 64 bits for the
fractions of a second, which will be necessary for accurate timekeeping.

No, 64bits of fractions will not be needed, at least until we start
using FreeBSD as embedded computer in Heisenbergcompensators.

I recall somebody saying that 100GHz was the highest realistic (or
lowest unrealistic) clock frequency using digital logic, the argument
was pretty convincing physically: light speed sets a size limit,
that prescripes some voltage gradients which in turn produces EMC
which in turn makes sure nothing works.  Also various tunnel effects,
and the general heisenberisms took their toll.

State of the art time interval measuring equipment is into the
a few picosecond territory (http://www.timing.com/).

Based on that I would say that 40 to 48 bits will be OK for the
fraction.

As a sidebar:  I had a kernel running which used 32i.32f timestamps
and converted to timeval  timespec as needed and it actually made
a lot of code look a lot more sane.  I may go back and do it some
day.

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message pine.sol.3.96.990818104932.14430d-100...@marcy.nas.nasa.gov, Bill 
Studenmund writes:

 I doubt we need more than 64 bit times. 2^63 seconds works out to
 292,279,025,208 years, or 292 (american) billion years. Current theories
 put the age of the universe at I think 12 to 16 billion years. So 64-bit
 signed times in seconds will cover from before the big bang to way past
 any time we'll be caring about. :-)

I was unclear. I was refering to the seconds side of things. Sub-second
resolution would need other bits.

Yes, but we need subsecond in the filesystems.  Think about make(1) on
a blinding fast machine...

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Julian Elischer


On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:

 Matt doesn't represent the FreeBSD project, and even if he rewrites
 the VFS subsystem so he can understand it, his rewrite would face
 considerable resistance on its way into FreeBSD.  I don't think
 there is reason to rewrite it, but there certainly are areas
 that need fixing.

You are misinformed as far as I know.. From discussions I saw, th
main architect of a VFS rewrite would be Kirk, and Matt would be acting as
Kirk's right-hand-man.

 
 The use of the vfs_default to make unimplemented VOP's
 fall through to code which implements function, while well
 intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

Well I believe that Kirk considers them misguided too, but he stated that
he wasn't going to remove them without serious thought about the alternatives.
 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Nate Williams
  Matt doesn't represent the FreeBSD project, and even if he rewrites
  the VFS subsystem so he can understand it, his rewrite would face
  considerable resistance on its way into FreeBSD.  I don't think
  there is reason to rewrite it, but there certainly are areas
  that need fixing.
 
 You are misinformed as far as I know.. From discussions I saw, th
 main architect of a VFS rewrite would be Kirk, and Matt would be acting as
 Kirk's right-hand-man.

Which discussions are these?  Are they archived somewhere?


Nate


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Poul-Henning Kamp
In message pine.bsf.3.95.990818105716.12306a-100...@current1.whistle.com, 
Julian Elischer writes:
On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:

 Matt doesn't represent the FreeBSD project, and even if he rewrites
 the VFS subsystem so he can understand it, his rewrite would face
 considerable resistance on its way into FreeBSD.  I don't think
 there is reason to rewrite it, but there certainly are areas
 that need fixing.

You are misinformed as far as I know.. From discussions I saw, th
main architect of a VFS rewrite would be Kirk, and Matt would be acting as
Kirk's right-hand-man.

I bet that Matt and Kirk uses rewrite for two very different
concepts.  The resulting reviews will be equally different.

The use of the vfs_default to make unimplemented VOP's
fall through to code which implements function, while well
intentioned, is misguided.
 
 I beg to differ.  The only difference is that we pass through
 multiple layers before we hit the bottom of the stack.  There is
 no loss of functionality but significant gain of clarity and
 modularity.

Well I believe that Kirk considers them misguided too, but he stated that
he wasn't going to remove them without serious thought about the alternatives.

I'll be more than ready to discuss this with Kirk.

--
Poul-Henning Kamp FreeBSD coreteam member
p...@freebsd.org   Real hackers run -current on their laptop.
FreeBSD -- It will take a long time before progress goes too far!


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Terry Lambert
  2.  Advisory locks are hung off private backing objects.
   I'm not sure. The struct lock * is only used by layered filesystems, so
   they can keep track both of the underlying vnode lock, and if needed their
   own vnode lock. For advisory locks, would we want to keep track both of
   locks on our layer and the layer below? Don't we want either one or the
   other? i.e. layers bypass to the one below, or deal with it all
   themselves.
  
  I think you want the lock on the intermediate layer: basically, on
  every vnode that has data associated with it that is unique to a
  layer.  Let's not forget, also, that you can expose a layer into
  the namespace in one place, and expose it covered under another
  layer, at another.  If you locked down to the backing object, then
  the only issue you would be left with is one or more intermediate
  backing objects.
 
 Right. That exported struct lock * makes locking down to the lowest-level
 file easy - you just feed it to the lock manager, and you're locking the
 same lock the lowest level fs uses. You then lock all vnodes stacked over
 this one at the same time. Otherwise, you just call VOP_LOCK below and
 then lock yourself.

I think this defeats the purpose of the stacking architecture; I
think that if you look at an unadulterated NULLFS, you'll see what I
mean.

Intermediate FS's should not trap VOP's that are not applicable
to them.

One of the purposes of doing a VOP_LOCK on intermediate vnodes
that aren't backing objects is to deal with the global vnode
pool management.  I'd really like FS's to own their vnode pools,
but even without that, you don't need the locking, since you
only need to flush data on vnodes that are backing objects.

If we look at a stack of FS's with intermediate exposure into the
namespace, then it's clear that the issue is really only applicable
to objects that act as a backing store:


--  --  
FS  Exposed in hierarchyBacking object
--  --  
top yes no
intermediate_1  no  no
intermediate_2  no  yes
intermediate_3  yes no
bottom  no  yes
--  --  

So when we lock top, we only lock in intermediate_2 and in bottom.

Then we attempt to lock in intermediate_3, but it fails: not because
there is a lock on the vnode in intermediate_3, but because there is
a lock in bottom.

It's unnecessary to lock the vnodes in the intermediate path, or
even at the exposure level, unless they are vnodes that have an
associated backing store.

The need to lock in intermediate_2 exists because it is a translation
layer or a namespace escape.  It deals with compression, or it deals
with file-as-a-directory folding, or it deals with file-hiding
(perhaps for a quoata file), etc..  If it didn't, it wouldn't need
backing store (and therefore wouldn't need to be locked).


  For a layer with an intermediate backing object, I'm prepared to
  declare it special, and proxy the operation down to any inferior
  backing object (e.g. a union FS that adds files from two FS's
  together, rather than just directoriy entry lists).  I think such
  layers are the exception, not the rule.
 
 Actually isn't the only problem when you have vnode fan-in (union FS)? 
 i.e.  a plain compressing layer should not introduce vnode locking
 problems. 

If it's a block compression layer, it will.  Also a translation layer;
consider a pure Unicode system that wants to remotely mount an FS
from a legacy system.  To do this, it needs to expand the pages from
the legacy system [only it can, since the legacy system doesn't know
about Unicode] in a 2:1 ratio.  Now consider doing a byte-range lock
on a file on such a system.  To propogate the lock, you have to do
an arithmetic conversion at the translation layer.  This gets worse
if the lower end FS is exposed in the namespace as well.

You could make the same arguments for other types of translation or
namespace escapes.


  I think that export policies are the realm of /etc/exports.
  
  The problem with each FS implementing its own policy, is that this
  is another place that copyinstr() gets called, when it shouldn't.
 
 Well, my thought was that, like with current code, most every fs would
 just call vfs_export() when it's presented an export operation. But by
 retaining the option of having the fs do its own thing, we can support
 different export semantics if desired.

I think this bears down on whether the NFS server VFS consumer is
allowed access to the VFS stack at the particular intermediate
layer.  I think this is really an administrative policy decision,
and not an option for the VFS.

I think it would be bad if a given VFS could refuse to participate
in a stacking 

Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Matthew Dillon
:On Wed, 18 Aug 1999, Poul-Henning Kamp wrote:
:
: Matt doesn't represent the FreeBSD project, and even if he rewrites
: the VFS subsystem so he can understand it, his rewrite would face
: considerable resistance on its way into FreeBSD.  I don't think
: there is reason to rewrite it, but there certainly are areas
: that need fixing.
:
:You are misinformed as far as I know.. From discussions I saw, th
:main architect of a VFS rewrite would be Kirk, and Matt would be acting as
:Kirk's right-hand-man.

Yes, this is correct.  Kirk is going to be the main architect.  I have
been heavily involved and will continue to be.

:The use of the vfs_default to make unimplemented VOP's
:
: I beg to differ.  The only difference is that we pass through
: multiple layers before we hit the bottom of the stack.  There is
:...
:Well I believe that Kirk considers them misguided too, but he stated that
:he wasn't going to remove them without serious thought about the alternatives.

The vfs op callout layering has not been on the radar screen.  There
are much too many other more serious problems.  I really doubt that any
changes will be made to this piece any time in the next year or even two,
if at all.

The main items on the radar screen are related to buffer management
(struct buf stuff.  For example, preventing VM blockages due to pages
being wired by write I/O's), VFS locking and reference count issues 
(for example, namei lookups, blockages in the pager and syncer due to
vnode locks held by blocked processes, etc...), and interactions 
between VFS and VM (for example: moving away from VOP_READ/VOP_WRITE 
and moving more towards a getpages/putpages model).

None of the items have been set in stone yet.  We're waiting for Kirk
to get back from vacation and get back into the groove.

-Matt



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: BSD XFS Port BSD VFS Rewrite

1999-08-18 Thread Julian Elischer
The discussions between Kirk and matt over a glass of beer/drink
at kirk's party at USENIX and at the Bay area User's group.



On Wed, 18 Aug 1999, Nate Williams wrote:

   Matt doesn't represent the FreeBSD project, and even if he rewrites
   the VFS subsystem so he can understand it, his rewrite would face
   considerable resistance on its way into FreeBSD.  I don't think
   there is reason to rewrite it, but there certainly are areas
   that need fixing.
  
  You are misinformed as far as I know.. From discussions I saw, th
  main architect of a VFS rewrite would be Kirk, and Matt would be acting as
  Kirk's right-hand-man.
 
 Which discussions are these?  Are they archived somewhere?
 
 
 Nate
 



To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



Re: cvs commit: src/bin/test test.c

1999-08-18 Thread Chris Costello
On Wed, Aug 18, 1999, Sheldon Hearn wrote:
  green   1999/08/17 17:18:53 PDT
  
Modified files:
  bin/test test.c 
Log:
The new test(1) did not use access() correctly. I don't know why, since
supposedly it's ksh-derived, and it's not broken in pdksh. I've added
a test for test running as root: if testing for -x, the file must be
mode  0111 to get success, rather than just existant.

Reviewed by:  chris
 
 What were you actually trying to fix, here?  I didn't see any discussion
 of this on hackers, current or bugs, nor in response to my initial
 commit message.

   He was fixing (though, as Bruce pointed out, it wasn't a
valid fix) test -x.  Apparently, access(2) will return 'success'
on access(file, X_OK) if called by a program run by root.  The
patch partly solves the problem, but the euid-vs-ruid problem
remains.

-- 
|Chris Costello ch...@calldei.com
|Disc space, the final frontier!
`--


To Unsubscribe: send mail to majord...@freebsd.org
with unsubscribe freebsd-hackers in the body of the message



  1   2   >