Sébastien Bouchex Bellomié
2008-May-20 06:59 UTC
[dtrace-discuss] IO probes and forcedirectio
Hi, I''m working on some performance analysis with our database and it seems that when the file system (UFS) is mounted with forcedirectio, the IO probe are not triggered when an I/O event occurs. Could you confirm that ? If so, why ? Seb -- This message posted from opensolaris.org
On Mon, May 19, 2008 at 11:59:03PM -0700, S??bastien Bouchex Bellomi?? wrote:> I''m working on some performance analysis with our database and it seems that > when the file system (UFS) is mounted with forcedirectio, the IO probe are not > triggered when an I/O event occurs. > > Could you confirm that ? If so, why ?That would be quite surprising given that the io provider is implemented by adding static probes to the low-level I/O routines. Can you explain the experiment you''re doing? Adam -- Adam Leventhal, Fishworks http://blogs.sun.com/ahl
Sébastien Bouchex Bellomié
2008-May-23 08:27 UTC
[dtrace-discuss] IO probes and forcedirectio
Adam, I''m using Solaris 10U4 on a T2000 server. My UFS partition is mounted with the forcedirectio option and my database resides on this partition. I''m using the DtraceToolkit 0.99 and also custom Dtrace script executed with the remote "cacao" Dtrace API. If I use iofileb.d or iosnoop to check the activity on my partition, I don''t see anything. A simple script triggering the "io:genunix::start" probe does not show any activities on my partition. Obviously, there are logical because fsrw.d show some activities and iostat is reporting the same. That''s why I came to the conclusion that the io provided ignore forcedirectio mounted partition, but I wanted to be sure. I might be a bug also... Seb -----Original Message----- From: Adam Leventhal [mailto:ahl at eng.sun.com] Sent: jeudi 22 mai 2008 19:47 To: S?bastien Bouchex Bellomi? Cc: dtrace-discuss at opensolaris.org Subject: Re: [dtrace-discuss] IO probes and forcedirectio On Mon, May 19, 2008 at 11:59:03PM -0700, S??bastien Bouchex Bellomi?? wrote:> I''m working on some performance analysis with our database and it seems that > when the file system (UFS) is mounted with forcedirectio, the IO probe are not > triggered when an I/O event occurs. > > Could you confirm that ? If so, why ?That would be quite surprising given that the io provider is implemented by adding static probes to the low-level I/O routines. Can you explain the experiment you''re doing? Adam -- Adam Leventhal, Fishworks http://blogs.sun.com/ahl
> > That''s why I came to the conclusion that the io provided ignore forcedirectio mounted partition, but I wanted to be sure. >io:genunix::start is in bdev_strategy(), which is lower than the file system level. It is not concerned with any file system, or its mount options. I suspect that you may not be recognizing the probes as belonging to this file system. Also, if there is a small number of UFS file systems with this option set, you may try to use directio_start:entry probe as a quick sanity check. HIH Bhaskar
Sébastien Bouchex Bellomié
2008-May-23 15:58 UTC
[dtrace-discuss] IO probes and forcedirectio
Hi, The following script is working fine as it display the " directio start " message [...] #!/usr/sbin/dtrace -s #pragma D option quiet fbt:ufs:directio_start:entry { printf("directio start\n"); } [...] However, taking my "mount" line, I don''t see anything special : /rdata on /dev/dsk/c2t1d1s0 read/write/setuid/devices/intr/forcedirectio/largefiles/logging/xattr/onerror=panic/dev=1d80008 on Thu Apr 24 15:41:27 2008 Thanks Seb -----Original Message----- From: Bhaskar.Sarkar at Sun.COM [mailto:Bhaskar.Sarkar at Sun.COM] Sent: vendredi 23 mai 2008 17:26 To: S?bastien Bouchex Bellomi? Cc: dtrace-discuss at opensolaris.org Subject: Re: [dtrace-discuss] IO probes and forcedirectio> > That''s why I came to the conclusion that the io provided ignore forcedirectio mounted partition, but I wanted to be sure. >io:genunix::start is in bdev_strategy(), which is lower than the file system level. It is not concerned with any file system, or its mount options. I suspect that you may not be recognizing the probes as belonging to this file system. Also, if there is a small number of UFS file systems with this option set, you may try to use directio_start:entry probe as a quick sanity check. HIH Bhaskar
I don''t understand the question. I see "forcedirectio" set as a mount option, so I would expect ufs:directio_start:entry to fire.... /jim S?bastien Bouchex Bellomi? wrote:> Hi, > > The following script is working fine as it display the " directio start " message > > [...] > #!/usr/sbin/dtrace -s > #pragma D option quiet > fbt:ufs:directio_start:entry > { > printf("directio start\n"); > } > [...] > > However, taking my "mount" line, I don''t see anything special : > > /rdata on /dev/dsk/c2t1d1s0 read/write/setuid/devices/intr/forcedirectio/largefiles/logging/xattr/onerror=panic/dev=1d80008 on Thu Apr 24 15:41:27 2008 > > Thanks > Seb > > -----Original Message----- > From: Bhaskar.Sarkar at Sun.COM [mailto:Bhaskar.Sarkar at Sun.COM] > Sent: vendredi 23 mai 2008 17:26 > To: S?bastien Bouchex Bellomi? > Cc: dtrace-discuss at opensolaris.org > Subject: Re: [dtrace-discuss] IO probes and forcedirectio > > > >> That''s why I came to the conclusion that the io provided ignore forcedirectio mounted partition, but I wanted to be sure. >> >> > > io:genunix::start is in bdev_strategy(), which is lower than > the file system level. It is not concerned with any file system, > or its mount options. I suspect that you may not be recognizing the > probes as belonging to this file system. > > Also, if there is a small number of UFS file systems with this option > set, you may try to use directio_start:entry probe as a quick sanity > check. > > HIH > Bhaskar > _______________________________________________ > dtrace-discuss mailing list > dtrace-discuss at opensolaris.org >
On Fri, May 23, 2008 at 12:32:43PM -0400, Jim Mauro wrote:> I don''t understand the question. > I see "forcedirectio" set as a mount option, so I would expect > ufs:directio_start:entry to fire....Yes, but we''re wondering why io:::start isn''t firing. Adam -- Adam Leventhal, Fishworks http://blogs.sun.com/ahl
Sébastien Bouchex Bellomié
2008-May-26 12:09 UTC
[dtrace-discuss] IO probes and forcedirectio
Hi, OK, correction, the probes from the io provider are correctly triggered with forcedirectio enabled but only once ! Here is where I am : Let create a file with mkfile 100m <path> fbt:ufs:directio_start:entry probe is fired multiple times but the probes from the io provider are only fired once each. Like this : [...] 20 4641 bdev_strategy:start io start 20 4631 biowait:wait-start io wait-start 20 4630 biowait:wait-done io wait-done 21 4629 biodone:done io done [...] io:::start is triggered at the beginning of the mkfile call and nothing afterward. So going back to the beginning of my problem (which is having io stats on a forectdirectio mounted partition); I''m still wondering how to do that... If you have some hints... Seb -----Original Message----- From: Adam Leventhal [mailto:ahl at eng.sun.com] Sent: vendredi 23 mai 2008 19:00 To: Jim Mauro Cc: S?bastien Bouchex Bellomi?; dtrace-discuss at opensolaris.org; Bhaskar.Sarkar at Sun.COM Subject: Re: [dtrace-discuss] IO probes and forcedirectio On Fri, May 23, 2008 at 12:32:43PM -0400, Jim Mauro wrote:> I don''t understand the question. > I see "forcedirectio" set as a mount option, so I would expect > ufs:directio_start:entry to fire....Yes, but we''re wondering why io:::start isn''t firing. Adam -- Adam Leventhal, Fishworks http://blogs.sun.com/ahl