CVS commit: src/sys/fs/puffs

2021-12-03 Thread Masatake Daimon
Module Name:src Committed By: pho Date: Fri Dec 3 13:08:10 UTC 2021 Modified Files: src/sys/fs/puffs: puffs_msgif.h Log Message: Avoid using register_t in The purpose of this header file is to interface between the kernel-space and user-space, and is #include'd by a use

CVS commit: src/sys/fs/puffs

2021-12-03 Thread Masatake Daimon
Module Name:src Committed By: pho Date: Fri Dec 3 13:08:10 UTC 2021 Modified Files: src/sys/fs/puffs: puffs_msgif.h Log Message: Avoid using register_t in The purpose of this header file is to interface between the kernel-space and user-space, and is #include'd by a use

CVS commit: src/sys/fs/puffs

2019-09-27 Thread Christos Zoulas
Module Name:src Committed By: christos Date: Fri Sep 27 22:36:57 UTC 2019 Modified Files: src/sys/fs/puffs: puffs_vfsops.c Log Message: Fix copying issue that was causing errors in unit_test puffs_tstavfs by removing code. To generate a diff of this commit: cvs rdiff -u

CVS commit: src/sys/fs/puffs

2019-09-27 Thread Christos Zoulas
Module Name:src Committed By: christos Date: Fri Sep 27 22:36:57 UTC 2019 Modified Files: src/sys/fs/puffs: puffs_vfsops.c Log Message: Fix copying issue that was causing errors in unit_test puffs_tstavfs by removing code. To generate a diff of this commit: cvs rdiff -u

Re: CVS commit: src/sys/fs/puffs

2014-10-15 Thread Robert Elz
Date:Wed, 15 Oct 2014 19:41:40 +0100 From:David Laight Message-ID: <20141015184140.gl23...@snowdrop.l8s.co.uk> | Consider what happens if you write: | When DPRINTF() expands 'if (xxx) yyy' it all goes horribly wrong. Of course, the do { } while(0) wrapping is nee

Re: CVS commit: src/sys/fs/puffs

2014-10-15 Thread Alan Barrett
On Wed, 15 Oct 2014, David Laight wrote: Consider what happens if you write: if (error) DPRINTF((...)); else fubar(); When DPRINTF() expands 'if (xxx) yyy' it all goes horribly wrong. That's why I changed it to do { if (xxx) yyy; } while

Re: CVS commit: src/sys/fs/puffs

2014-10-15 Thread David Laight
On Tue, Oct 07, 2014 at 12:40:04AM +0700, Robert Elz wrote: > Date:Mon, 6 Oct 2014 14:26:44 + > From:"Havard Eidnes" > Message-ID: <20141006142644.7693...@cvs.netbsd.org> > > | Make this build again without debugging enabled; DPRINTF() can end up > | as empty,

Re: CVS commit: src/sys/fs/puffs

2014-10-06 Thread Havard Eidnes
> | Make this build again without debugging enabled; DPRINTF() can end up > | as empty, and in an if conditional, you then need braces if that's the > | only potential body. > > That change makes no sense to me - the original code was > > if (error) > DPRINTF(()); > >

Re: CVS commit: src/sys/fs/puffs

2014-10-06 Thread Robert Elz
Date:Mon, 6 Oct 2014 14:26:44 + From:"Havard Eidnes" Message-ID: <20141006142644.7693...@cvs.netbsd.org> | Make this build again without debugging enabled; DPRINTF() can end up | as empty, and in an if conditional, you then need braces if that's the | only p

Re: CVS commit: src/sys/fs/puffs

2014-10-05 Thread Alan Barrett
On Sun, 05 Oct 2014, Alistair Crooks wrote: On Sun, Oct 05, 2014 at 02:13:15PM +, Alan Barrett wrote: #ifdef PUFFSDEBUG extern int puffsdebug; /* puffs_subr.c */ -#define DPRINTF(x) if (puffsdebug > 0) printf x -#define DPRINTF_VERBOSE(x) if (puffsdebug > 1) printf x +#define DPRINTF(x) do

Re: CVS commit: src/sys/fs/puffs

2014-10-05 Thread Alistair Crooks
On Sun, Oct 05, 2014 at 02:13:15PM +, Alan Barrett wrote: > #ifdef PUFFSDEBUG > extern int puffsdebug; /* puffs_subr.c */ > -#define DPRINTF(x) if (puffsdebug > 0) printf x > -#define DPRINTF_VERBOSE(x) if (puffsdebug > 1) printf x > +#define DPRINTF(x) do { \ > + if (puffsdebug >

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread David Holland
On Tue, Jul 24, 2012 at 07:13:34AM +0200, Emmanuel Dreyfus wrote: > > OTOH for netbsd-6 maybe a better patch would be to change cache_enter > > to return instead of asserting for long filenames. > > If nobody opposes, I can do that. Best to ask on tech-kern, but it seems unlikely to be contro

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread Emmanuel Dreyfus
David Holland wrote: > OTOH for netbsd-6 maybe a better patch would be to change cache_enter > to return instead of asserting for long filenames. If nobody opposes, I can do that. -- Emmanuel Dreyfus http://hcpnet.free.fr/pubz m...@netbsd.org

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread David Holland
On Mon, Jul 23, 2012 at 10:07:06PM +, Martin Husemann wrote: > > > This is wrong; you're reverting rmind's cleanup. > > > > I backed out the change. Will someone pullup the change to netbsd-6? Can you prepare a patch that applies before rmind's cleanup? (Or just one that applies on netbsd-

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread Martin Husemann
On Mon, Jul 23, 2012 at 09:34:38PM +0200, Emmanuel Dreyfus wrote: > David Holland wrote: > > > > Di not call cache_enter with path components bigger than NCHNAMLEN, as it > > > panics the kernel. > > > > This is wrong; you're reverting rmind's cleanup. > > I backed out the change. Will someon

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread Emmanuel Dreyfus
David Holland wrote: > > Di not call cache_enter with path components bigger than NCHNAMLEN, as it > > panics the kernel. > > This is wrong; you're reverting rmind's cleanup. I backed out the change. Will someone pullup the change to netbsd-6? -- Emmanuel Dreyfus http://hcpnet.free.fr/pubz

Re: CVS commit: src/sys/fs/puffs

2012-07-23 Thread David Holland
On Mon, Jul 23, 2012 at 12:15:31PM +, Emmanuel Dreyfus wrote: > Module Name: src > Committed By:manu > Date:Mon Jul 23 12:15:31 UTC 2012 > > Modified Files: > src/sys/fs/puffs: puffs_node.c puffs_vnops.c > > Log Message: > Di not call cache_enter with pat

Re: CVS commit: src/sys/fs/puffs

2011-10-18 Thread Emmanuel Dreyfus
Jukka Ruohonen wrote: > +#ifdef DIAGNOSTIC > + KASSERT(curlwp != uvm.pagedaemon_lwp); > +#endif > > Why pollute code with redundant #ifdefs? Right, I missed the point that KASSERT contains #ifdef DIAGNOSTIC. I will fix that tomorrow morning. -- Emmanuel Dreyfus http://hcpnet.free.fr/pub

Re: CVS commit: src/sys/fs/puffs

2011-10-18 Thread Jukka Ruohonen
On Tue, Oct 18, 2011 at 03:39:10PM +, Emmanuel Dreyfus wrote: > Module Name: src > Committed By: manu > Date: Tue Oct 18 15:39:09 UTC 2011 > > Modified Files: > src/sys/fs/puffs: puffs_msgif.c puffs_node.c puffs_vfsops.c > puffs_vnops.c > > Log Message: > Make sure pa

Re: CVS commit: src/sys/fs/puffs

2011-10-12 Thread Emmanuel Dreyfus
On Wed, Oct 12, 2011 at 06:02:05AM +, YAMAMOTO Takashi wrote: > > One way to fix that may be to have one ioflush thread for each userland > > filesystem. That way a broken filesystem will not prevent ioflush from > > working for others. > > sure, it can be a good idea. I have a patch that do

Re: CVS commit: src/sys/fs/puffs

2011-10-11 Thread YAMAMOTO Takashi
hi, > YAMAMOTO Takashi wrote: > >> if it trapped forever, it's a bug and should be fixed. my point was >> that your change didn't fix the bug. blocking ioflush is merely a symptom. > > The problem with userland filesystems is that we may have little control > as theses may be third pary progr

Re: CVS commit: src/sys/fs/puffs

2011-10-11 Thread Emmanuel Dreyfus
YAMAMOTO Takashi wrote: > if it trapped forever, it's a bug and should be fixed. my point was > that your change didn't fix the bug. blocking ioflush is merely a symptom. The problem with userland filesystems is that we may have little control as theses may be third pary programs. Should kerne

Re: CVS commit: src/sys/fs/puffs

2011-10-11 Thread YAMAMOTO Takashi
hi, > YAMAMOTO Takashi wrote: > >> > Sure ioflush do not directly free memory, but vnodes' dirty page use >> > memory, don't they? If ioflush stops working, is pageadaemon able to >> > pageout that kind of memory? >> pagedaemon flushes dirty pages by itself, yes. > > So this is not a problem t

Re: CVS commit: src/sys/fs/puffs

2011-09-26 Thread Emmanuel Dreyfus
On Sat, Sep 24, 2011 at 03:31:02AM +, YAMAMOTO Takashi wrote: > pagedaemon flushes dirty pages by itself, yes. I added a printf() at the beginning of puffs_vnop_strategy() to check for calls by kernel threads. Only ioflush calls puffs_vnop_strategy(), pagedaemon never goes there. This may exp

Re: CVS commit: src/sys/fs/puffs

2011-09-23 Thread Emmanuel Dreyfus
YAMAMOTO Takashi wrote: > > Sure ioflush do not directly free memory, but vnodes' dirty page use > > memory, don't they? If ioflush stops working, is pageadaemon able to > > pageout that kind of memory? > pagedaemon flushes dirty pages by itself, yes. So this is not a problem to get ioflush tra

Re: CVS commit: src/sys/fs/puffs

2011-09-23 Thread YAMAMOTO Takashi
hi, > YAMAMOTO Takashi wrote: > >> as i told you a few times, ioflush is not a thread to free memory. >> pagedaemon is. > > Sure ioflush do not directly free memory, but vnodes' dirty page use > memory, don't they? If ioflush stops working, is pageadaemon able to > pageout that kind of memory?

Re: CVS commit: src/sys/fs/puffs

2011-09-23 Thread Emmanuel Dreyfus
YAMAMOTO Takashi wrote: > as i told you a few times, ioflush is not a thread to free memory. > pagedaemon is. Sure ioflush do not directly free memory, but vnodes' dirty page use memory, don't they? If ioflush stops working, is pageadaemon able to pageout that kind of memory? > please read ufs

Re: CVS commit: src/sys/fs/puffs

2011-09-23 Thread YAMAMOTO Takashi
hi, > YAMAMOTO Takashi wrote: > >> > This avoids deadlocks in the following situations: >> > 1) when memory is low: ioflush waits the fileystem, the fielsystem waits >> >for memory >> can you explain how it is a problem? > > As I understand, one way to free memory is to flush vnode backed

Re: CVS commit: src/sys/fs/puffs

2011-09-22 Thread Emmanuel Dreyfus
YAMAMOTO Takashi wrote: > > This avoids deadlocks in the following situations: > > 1) when memory is low: ioflush waits the fileystem, the fielsystem waits > >for memory > can you explain how it is a problem? As I understand, one way to free memory is to flush vnode backed pages to the back

Re: CVS commit: src/sys/fs/puffs

2011-09-22 Thread YAMAMOTO Takashi
hi, > Module Name: src > Committed By: manu > Date: Wed Sep 21 15:36:33 UTC 2011 > > Modified Files: > src/sys/fs/puffs: puffs_vfsops.c puffs_vnops.c > > Log Message: > Make sure ioflush does not sleep in PUFFS code path, waiting for a mutex, > a memory allocation, or a response f

Re: CVS commit: src/sys/fs/puffs

2011-01-11 Thread Antti Kantee
On Tue Jan 11 2011 at 14:04:54 +, Mihai Chelaru wrote: > Module Name: src > Committed By: kefren > Date: Tue Jan 11 14:04:54 UTC 2011 > > Modified Files: > src/sys/fs/puffs: puffs_sys.h puffs_vnops.c > > Log Message: > add advlock to puffs. ok pooka@ > should fix kern/43321 Th

Re: CVS commit: src/sys/fs/puffs

2010-07-15 Thread Antti Kantee
On Thu Jul 15 2010 at 20:03:37 +, David Holland wrote: > On Wed, Jul 14, 2010 at 02:07:37PM +, Antti Kantee wrote: > > Modified Files: > >src/sys/fs/puffs: puffs_vnops.c > > > > Log Message: > > RENAME lookup semantics say return EISDIR if dvp = *vpp for the > > last component ..

Re: CVS commit: src/sys/fs/puffs

2010-07-15 Thread David Holland
On Wed, Jul 14, 2010 at 02:07:37PM +, Antti Kantee wrote: > Modified Files: > src/sys/fs/puffs: puffs_vnops.c > > Log Message: > RENAME lookup semantics say return EISDIR if dvp = *vpp for the > last component obviously(!!) I take it that when you say *vpp, you mean tvp? (the

CVS commit: src/sys/fs/puffs

2010-02-17 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Wed Feb 17 14:32:08 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_vfsops.c Log Message: * add a rant about why MPSAFE isn't enabled even though puffs code is * predict_false that we are mounting when calling statvfs * KNF To g

CVS commit: src/sys/fs/puffs

2010-01-14 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Thu Jan 14 19:50:07 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_msgif.c puffs_vfsops.c Log Message: In case the operations thread has exited, do not queue any more operations. This prevents kernel memory leaks (one of which h

CVS commit: src/sys/fs/puffs

2010-01-14 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Thu Jan 14 14:44:13 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_vnops.c Log Message: Since VOP_GETATTR() does not require a locked vnode, resolve and reference the puffs_node before sending the request to the file server. Thi

CVS commit: src/sys/fs/puffs

2010-01-07 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Thu Jan 7 23:02:34 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_msgif.c puffs_sys.h puffs_vfsops.c Log Message: Rename PUFFS_SOPREQ_EXIT to PUFFS_SOPREQSYS_EXIT to better signal it comes from within the kernel instead of as a

CVS commit: src/sys/fs/puffs

2010-01-07 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Thu Jan 7 22:59:27 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_msgif.c Log Message: Fix variable name in my commit tree too. To generate a diff of this commit: cvs rdiff -u -r1.77 -r1.78 src/sys/fs/puffs/puffs_msgif.c Plea

CVS commit: src/sys/fs/puffs

2010-01-07 Thread Antti Kantee
Module Name:src Committed By: pooka Date: Thu Jan 7 22:45:31 UTC 2010 Modified Files: src/sys/fs/puffs: puffs_msgif.c puffs_msgif.h puffs_sys.h Log Message: Add a PUFFS_UNMOUNT server->kernel request, which causes the kernel to initiate self destruct, i.e. unmount(MNT_FOR