stats collection in sys/kern/vfs_cache.c

2014-12-01 Thread Dennis Ferguson
I thought I would pass by some proposed changes to the statistics collection in sys/kern/vfs_cache.c to see if I am over-doing (or under-doing) it, or just doing it wrong. Statistics are annoying. Since this code was made MP-capable the basic method of stats collection has been to provide each pr

Re: struct ifnet and ifaddr handling [was: Re: Making global variables of if.c MPSAFE]

2014-12-01 Thread Ryota Ozaki
Hi, I found an defect of ifnet object initializations. - if_attach and if_alloc_sadl is called in each interface XXXattach function - if_alloc_sadl may be called via XXX_ifattach (e.g., ether_ifattach) - if_attach initializes an ifnet object, but the initialization is incomplete and if_

driver concurrency

2014-12-01 Thread David Holland
How many drivers are there (hardware-level drivers, not things like raidframe) where it really matters for more than one lwp to be able to be running (not stopped) in the driver at once? I'm thinking probably network cards but not much else. (This question is supposed to provoke a discussion; I h

Re: driver concurrency

2014-12-01 Thread Manuel Bouyer
On Mon, Dec 01, 2014 at 03:02:39PM +, David Holland wrote: > How many drivers are there (hardware-level drivers, not things like > raidframe) where it really matters for more than one lwp to be able to > be running (not stopped) in the driver at once? > > I'm thinking probably network cards bu

Re: Reuse strtonum(3) and reallocarray(3) from OpenBSD

2014-12-01 Thread Alan Barrett
On Sat, 29 Nov 2014, Kamil Rytarowski wrote: My proposition is to add a new header in src/sys/sys/overflow.h (/usr/include/sys/overflow.h) with the following content: operator_XaddY_overflow() operator_XsubY_overflow() operator_XmulY_overflow() X = optional s (signed) Y = optional l,ll, etc [*

status of Linux ptrace on amd64?

2014-12-01 Thread Alexander Nasonov
Hi, While trying to make some Linux instrumentation tool work on -current amd64 I noticed that ptrace support in compat_linux and compat_linux32 have some notable differences and compat_linux32 has a better support. For instance, I can debug 32bit Linux binaries with NetBSD's gdb but any attempt t

Re: driver concurrency

2014-12-01 Thread Thor Lancelot Simon
On Mon, Dec 01, 2014 at 05:53:12PM +0100, Manuel Bouyer wrote: > On Mon, Dec 01, 2014 at 03:02:39PM +, David Holland wrote: > > How many drivers are there (hardware-level drivers, not things like > > raidframe) where it really matters for more than one lwp to be able to > > be running (not stop

Re: driver concurrency

2014-12-01 Thread Manuel Bouyer
On Mon, Dec 01, 2014 at 02:28:04PM -0500, Thor Lancelot Simon wrote: > They would, and many are simple enough to make this reasonably easy to do, > but in practice, the giant locking of our SCSI code makes it pointless. Sure, but we could also make the scsi code run without the giant lock. Also, s

Re: driver concurrency

2014-12-01 Thread Thor Lancelot Simon
On Mon, Dec 01, 2014 at 08:42:08PM +0100, Manuel Bouyer wrote: > On Mon, Dec 01, 2014 at 02:28:04PM -0500, Thor Lancelot Simon wrote: > > They would, and many are simple enough to make this reasonably easy to do, > > but in practice, the giant locking of our SCSI code makes it pointless. > > Sure,

Re: driver concurrency

2014-12-01 Thread Justin Cormack
On Mon, Dec 1, 2014 at 7:42 PM, Manuel Bouyer wrote: > On Mon, Dec 01, 2014 at 02:28:04PM -0500, Thor Lancelot Simon wrote: >> They would, and many are simple enough to make this reasonably easy to do, >> but in practice, the giant locking of our SCSI code makes it pointless. > > Sure, but we coul

Re: status of Linux ptrace on amd64?

2014-12-01 Thread Christos Zoulas
In article <20141201172756.GA29051@neva>, Alexander Nasonov wrote: >Hi, > >While trying to make some Linux instrumentation tool work on -current >amd64 I noticed that ptrace support in compat_linux and compat_linux32 >have some notable differences and compat_linux32 has a better support. >For ins

Re: status of Linux ptrace on amd64?

2014-12-01 Thread Alexander Nasonov
Christos Zoulas wrote: > Should not be that hard, but what is that tool reading from PEEKUSER? > Registers? In both cases it reads from user_regs_struct, if I understand everything correctly. But it's the first step, the tool would definitely try other things if PEEKUSER didn't fail. In fact, I'm

Re: status of Linux ptrace on amd64?

2014-12-01 Thread Christos Zoulas
On Dec 1, 9:06pm, al...@yandex.ru (Alexander Nasonov) wrote: -- Subject: Re: status of Linux ptrace on amd64? | Christos Zoulas wrote: | > Should not be that hard, but what is that tool reading from PEEKUSER? | > Registers? | | In both cases it reads from user_regs_struct, if I understand everyt

Re: driver concurrency

2014-12-01 Thread Masao Uebayashi
On Tue, Dec 2, 2014 at 5:32 AM, Thor Lancelot Simon wrote: > Try it! It's quite a mess, particularly around target and bus attach/detach. scsipi and wscons are the worst in that respect. (Who wants to be a hero?)

Re: driver concurrency

2014-12-01 Thread Thor Lancelot Simon
On Tue, Dec 02, 2014 at 12:52:51PM +0900, Masao Uebayashi wrote: > On Tue, Dec 2, 2014 at 5:32 AM, Thor Lancelot Simon wrote: > > Try it! It's quite a mess, particularly around target and bus > > attach/detach. > > scsipi and wscons are the worst in that respect. > > (Who wants to be a hero?)

Re: driver concurrency

2014-12-01 Thread Paul Goyette
... actually getting any meaningful concurrency in the SCSI code, for disks, ... Without, of course, sacrificing functionality for other things that attach via SCSI (tapes? scanners? cd?) :) - | Paul Goyette | PGP