Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-05 Thread James Carlson
Peter Memishian writes:
 
   The problem is really in the distinction between section two of the
   man pages (the historical system call interface) and the real
   OpenSolaris system call interface that dtrace exposes as syscall.
   
   Dtrace syscall isn't the same thing as man page section two, as the
   former is an undocumented implementation detail and the latter is a
   standard interface.
 
 Precisely.  Seems like an RFE is warranted to allow the system call names
 in our manpages to be used.  This would eliminate both (a) the current
 surprise and confusion, and (b) the dependency on the system call
 implementation details (which are inherently unstable).  Another nice side
 effect would be that the stability level of the probe could match the
 stability level given in the section two manpage.

I mostly agree with that ... I just think that effort is what Adam was
referring to as putting lipstick on a pig.

My understanding of the rationale is that it's better to have access
to a raw, undoctored syscall interface when you really need it, than
to have a prettified interface that might not let you see all the
details when you want to.

In other words, a better answer might be to create an abi provider
that maps into the stable programming interface, and leave syscall
alone.

-- 
James Carlson, Solaris Networking  [EMAIL PROTECTED]
Sun Microsystems / 35 Network Drive71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-05 Thread Peter Memishian

  I mostly agree with that ... I just think that effort is what Adam was
  referring to as putting lipstick on a pig.
  
  My understanding of the rationale is that it's better to have access
  to a raw, undoctored syscall interface when you really need it, than
  to have a prettified interface that might not let you see all the
  details when you want to.
  
  In other words, a better answer might be to create an abi provider
  that maps into the stable programming interface, and leave syscall
  alone.

Fair enough.  As long as there's some way for someone to write a script
that corresponds to the documented system calls without having to rely
on implementation artifacts.

-- 
meem
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Alan Coopersmith
Adam Leventhal wrote:
 On Sat, Feb 02, 2008 at 10:03:33PM -0600, Mike Gerdts wrote:
 My view of 6590548[1] says that it is closed as not a defect but does
 not offer any clues as to why it is not a defect.  Any chance of
 getting this cleared up?
 
 I'm not sure why we don't include the evaluation in the public version,

Because many bug evaluations include references/snippets of the source
code, and no one has taken the couple years to sit down and make sure
we wouldn't be publishing any bug evaluations containing source code
we couldn't open.

-- 
-Alan Coopersmith-   [EMAIL PROTECTED]
 Sun Microsystems, Inc. - X Window System Engineering
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread James Carlson
Nicolas Williams writes:
 On Mon, Feb 04, 2008 at 05:44:05PM +0100, Joerg Schilling wrote:
  Nicolas Williams [EMAIL PROTECTED] wrote:
   This pig isn't very attractive.  Is a system call number shortage the
   underlying problem?  And is the fix to this ultimately about fixing the
   syscall number shortage?
  
  grouping several syscalls under a single entry is nothting new.
 
 I am aware.  However, I think, e.g., unlinkat(2) should be just like
 unlink(2), from a DTrace syscall provider p.o.v.  Adam called this a
 pig for a reason; I agree with that characterization.

The problem is really in the distinction between section two of the
man pages (the historical system call interface) and the real
OpenSolaris system call interface that dtrace exposes as syscall.

Dtrace syscall isn't the same thing as man page section two, as the
former is an undocumented implementation detail and the latter is a
standard interface.

I agree that it'd be nice to throw a few bones at the poor user when
he does something obvious and still wrong, but I agree that it's
just a pig.

-- 
James Carlson, Solaris Networking  [EMAIL PROTECTED]
Sun Microsystems / 35 Network Drive71.232W   Vox +1 781 442 2084
MS UBUR02-212 / Burlington MA 01803-2757   42.496N   Fax +1 781 442 1677
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Joerg Schilling
Nicolas Williams [EMAIL PROTECTED] wrote:

 On Mon, Feb 04, 2008 at 05:44:05PM +0100, Joerg Schilling wrote:
  Nicolas Williams [EMAIL PROTECTED] wrote:
   This pig isn't very attractive.  Is a system call number shortage the
   underlying problem?  And is the fix to this ultimately about fixing the
   syscall number shortage?
  
  grouping several syscalls under a single entry is nothting new.

 I am aware.  However, I think, e.g., unlinkat(2) should be just like
 unlink(2), from a DTrace syscall provider p.o.v.  Adam called this a
 pig for a reason; I agree with that characterization.

These *at*() calls have been defined in 2001, I would guess this is some
time before dtrace came up and truss(1) deals with them

¯A
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Joerg Schilling
Nicolas Williams [EMAIL PROTECTED] wrote:

  unlink(2) and unlinkat(2) are different system calls. unlinkat(2) is 
  actually a
  subcode (number 5) of the SYS_fsat system call. While it might be confusing 
  to u
  sers, DTrace isn't going to slap lipstack on that particular pig.
  
  [...]
  
  ---8---

 This pig isn't very attractive.  Is a system call number shortage the
 underlying problem?  And is the fix to this ultimately about fixing the
 syscall number shortage?

grouping several syscalls under a single entry is nothting new.

As long as you stay under the limit of parameters that work fast, I see no 
problem with this kind of implementation.

Jörg

-- 
 EMail:[EMAIL PROTECTED] (home) Jörg Schilling D-13353 Berlin
   [EMAIL PROTECTED](uni)  
   [EMAIL PROTECTED] (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.berlios.de/old/private/ ftp://ftp.berlios.de/pub/schily
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Nicolas Williams
On Sun, Feb 03, 2008 at 01:34:02PM -0800, Adam Leventhal wrote:
 I'm not sure why we don't include the evaluation in the public version, but
 here it is:
 
 ---8---
  Evaluation
 [ahl 8.9.2007]
 
 unlink(2) and unlinkat(2) are different system calls. unlinkat(2) is actually 
 a
 subcode (number 5) of the SYS_fsat system call. While it might be confusing 
 to u
 sers, DTrace isn't going to slap lipstack on that particular pig.
 
 [...]
 
 ---8---

This pig isn't very attractive.  Is a system call number shortage the
underlying problem?  And is the fix to this ultimately about fixing the
syscall number shortage?

Nico
-- 
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Nicolas Williams
On Mon, Feb 04, 2008 at 05:44:05PM +0100, Joerg Schilling wrote:
 Nicolas Williams [EMAIL PROTECTED] wrote:
  This pig isn't very attractive.  Is a system call number shortage the
  underlying problem?  And is the fix to this ultimately about fixing the
  syscall number shortage?
 
 grouping several syscalls under a single entry is nothting new.

I am aware.  However, I think, e.g., unlinkat(2) should be just like
unlink(2), from a DTrace syscall provider p.o.v.  Adam called this a
pig for a reason; I agree with that characterization.

Nico
-- 
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-04 Thread Peter Memishian

  The problem is really in the distinction between section two of the
  man pages (the historical system call interface) and the real
  OpenSolaris system call interface that dtrace exposes as syscall.
  
  Dtrace syscall isn't the same thing as man page section two, as the
  former is an undocumented implementation detail and the latter is a
  standard interface.

Precisely.  Seems like an RFE is warranted to allow the system call names
in our manpages to be used.  This would eliminate both (a) the current
surprise and confusion, and (b) the dependency on the system call
implementation details (which are inherently unstable).  Another nice side
effect would be that the stability level of the probe could match the
stability level given in the section two manpage.

-- 
meem
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-02 Thread Mike Gerdts
On Feb 1, 2008 12:09 PM, James Carlson [EMAIL PROTECTED] wrote:
 It's not actually missing.  A quick sunsolve search will get you CR
 6590548, which explains that fsat is the actual syscall involved.

My view of 6590548[1] says that it is closed as not a defect but does
not offer any clues as to why it is not a defect.  Any chance of
getting this cleared up?

1. http://bugs.opensolaris.org/view_bug.do?bug_id=6590548

-- 
Mike Gerdts
http://mgerdts.blogspot.com/
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


[dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-01 Thread Nicolas Williams
I see that rm(1) uses unlinkat(2), but I don't see a syscall provider
probe for unlinkat(2).  That's... annoying (but there's always the fbt
provider).

Actually, I don't see any syscall provider probes for any of the
open/unlink/rename/...at[64]() system calls.  Is there a CR for this?

Nico
-- 
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org


Re: [dtrace-discuss] Missing syscall provider probes for unlinkat(2) and friends?

2008-02-01 Thread Nicolas Williams
On Fri, Feb 01, 2008 at 01:09:22PM -0500, James Carlson wrote:
 Nicolas Williams writes:
  I see that rm(1) uses unlinkat(2), but I don't see a syscall provider
  probe for unlinkat(2).  That's... annoying (but there's always the fbt
  provider).
  
  Actually, I don't see any syscall provider probes for any of the
  open/unlink/rename/...at[64]() system calls.  Is there a CR for this?
 
 It's not actually missing.  A quick sunsolve search will get you CR
 6590548, which explains that fsat is the actual syscall involved.

Ah.  Thanks!
___
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org