- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 10:45 AM
02-17-2010 10:45 AM
This is OpenVMS V8.3 on an Integrity rx3600.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 12:40 PM
02-17-2010 12:40 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
This is unlikely to be documented except in the source code. Addresses like 2BAD2BAD (and a few others, like DEADBEEF are scattered in the source code as flags).
This *may* be something in SHOW.EXE, but it's also possible it's in the scheduler or $GETJPI. FWIW, I can't see any instances of the string "2BAD" in SHOW.EXE.
Having worked on a derivative of SHOW PROCESS/CONTINUOUS back in VAX days, at that time it got most of its information from globally visible (though privileged) data structures, and the rest from $GETJPI, so chances are SHOW is just displaying what it found. Something else is planting the data. It must have changed fairly radically since then as a lot of the VAX code wasn't portable to Alpha, let alone Integrity.
As they say "Use the Source (Luke)".
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 02:44 PM
02-17-2010 02:44 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 03:30 PM
02-17-2010 03:30 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
If walking the stack fails, for whatever reason, special values are reported: 2BAD...
While walking the stack is simple for VAX and Alpha, it is very different and complex for I64.
Unfortunately there is no indication from the special PC/PSL what the actual failure in walking the stack was. So it is difficult to say why it failed. But these codes do not indicate a problem in your image. You should be able to find the string in sys$loadable_images, in the process management image.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 09:18 PM
02-17-2010 09:18 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
I used the PC sampler in SDA to see what's going on and why the process is using more CPU time and is visibly slower. I see lots of time in F11BXQP at IPL 8, routine DEL_EXTFCB_C. Now I have to find out what that means. Weird in that it doesn't do much file IO.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-17-2010 11:45 PM
02-17-2010 11:45 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
DEL_EXTFCB in [F11X]CLENUP removes and de-allocates Extension FCBs (File Control Blocks) linked to a primary FCB during a cleanup operation after a successfully completed file operation.
Is this program working with very fragmented files or files with man ACLs and therefore with many extension file headers ? Or are there a huge number of files open on the associated volumes ? High Trans Count on the mounted devices ?
DEL_EXTFCB runs in kernel mode and follows the FCB queues to the VCB to decrement the transaction count. Long lists of FCBs to be followed may cause this behaviour.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-18-2010 08:24 AM
02-18-2010 08:24 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
Fwiw,
Jur.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-18-2010 04:52 PM
02-18-2010 04:52 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
I looked at the drive and it is somewhat fragmented. What is interesting is the process doesn't do much I/O to the drive but another process which uses it heavily is hardly affected. Anyway, I told them to defrag the drive the next chance they get.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-18-2010 10:53 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 02:27 AM
02-19-2010 02:27 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
2BAD2BAD.CODE2BAD shows a problem in walking the call stack not finding the AST frame. It is not an indicator that the target process is at a high IPL.
There were changes in the unwind code after V8.3. But I don't know why the AST frame isn't found in your environment and if any changes so far can fix that.
But I'm sure, this is not the real problem you want to solve. You seem to have a performance problem and SHOW PROCESS/CONT can't help you to find out whats going on.
PS: I was somehow wrong about finding the string in the image. I forgot that moving a 64 bit literal into a register (MOVL) splits the immediate operand into pieces and then into two slots so you can't see the literal as a whole in the code segment of the image. However, ANALYZE/IMAGE/SEGMENT=CODE can show the MOVL and the literal.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 08:57 AM
02-19-2010 08:57 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 11:12 AM
02-19-2010 11:12 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
I noticed the code has a C fsynch() call on each pass. If the disk the file being fsynched is on is fragmented, but the file itself isn't very fragmented, would there be excessive XQP time? There would be 0 or 1 fprintf() calls between the fsynch() calls. The file currently has 5 extents.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 11:27 AM
02-19-2010 11:27 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
I described the operation of DEL_EXTFCB in a previous reply. The code walks FCB chains to the VCB. Are there many files open on that disk ?
Why not write a simple example program doing fsync calls in a tight loop and watch the performance of that test program ?
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 01:12 PM
02-19-2010 01:12 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-19-2010 05:17 PM
02-19-2010 05:17 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
SET FILE /CACHING_ATTRIBUTE=NO_CACHING file
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2010 05:40 PM
02-22-2010 05:40 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
I just noticed that SDA also has the "2BADCODE" (as well as "1BADCODE") problem with SHOW PROCESS/FULL but SDA PCS module doesn't.
Those who are into XQP may be amused by the attached pcs sh trace/stat output.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2010 08:27 PM
02-22-2010 08:27 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
fsync maps to an RMS $FLUSH which will tell the xqp to update the file header.
You did not mention revision (-H1?) or patch level. The makes the PCS trace (nice! ) data ambiguous.
Maybe you can use ANAL/SYS.. EXA/INST for one or two of the popular instructions to make sure we are looking at the same sources.
Like that 624 DEL_EXTFCB_C+00360
Is that a "ld4 r18 = [r27]" per chance?
I'm thinking it may be in...
UNTIL .P[VCB$B_TYPE] EQL DYN$C_VCB DO P = .P[FCB$L_FCBFL];
Also, is the system burning significant MPsync?
How about a spinlock trace, perhaps using @ SYS$EXAMPLES:SPL
Is there a lot of FILSYS time?
- Is this a cluster or standalone
- Any TRUNCATE calls happening?
fwiw,
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2010 11:42 PM
02-22-2010 11:42 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
this process is clearly spending a lot of CPU cycles in DEL_EXTFCB. One question would be, why does it get there ? The other question is, why does it spend so much time in there once it gets there ?
There are a couple of loops in this routine, which walk the FCB chains.
$ ANAL/SYS
SDA> SHOW DEV disk-device-name
SDA> READ SYSDEF
SDA> VALI QUE vcb+vcb$l_fcbfl
How many FCBs are in that queue ?
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-22-2010 11:57 PM
02-22-2010 11:57 PM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
Of course pcs does not display that. The pc is fabricated and never actually sess that address.
Jur (PCS author).
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-23-2010 01:07 AM
02-23-2010 01:07 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
when RMS is flushing the buffers, it looks like it only updates the file header (via a call to the XQP), if the end-of-file block number (IFB$L_EBK) has changed. So a simple fsync test without actually writing to the file may not trigger the behaviour seen in the application.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-23-2010 10:54 AM
02-23-2010 10:54 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
SDA> v q vcb+vcb$l_fcbfl
Queue is complete, total of 168 elements in the queue
Hein:
The system is a cluster of 3 nodes running V8.3 (no -1Hx), and was up to date with all V8.3 patches as of a year ago. The application runs on only one now, the other's mostly idle, the third is a quorum system.
Mon Mode shows 1% user mode, ~70% kernel mode, ~10% MPSYNC, on a 4 processor rx3600.
The PC at DEL_EXTFCB_C+360 matches what you have, +350 = cmp4.eq p7, p0=11,r28 and +380 = cmp4.eq p0, p8=11, r30
I'm attaching the output of the SPL script. As you can see, tons of FILSYS time.
I neglected to mention that the process is running IBM MQ Series client code. I don't see how this could relate, there are 4 channels to the fragmented disk, none seem to relate to MQ. The executable image lives there, and 3 logging files do as well. One's 1000 blocks, the other two are much smaller.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-24-2010 03:26 AM
02-24-2010 03:26 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
interesting data. Let me give you my interpretation:
Some XQP operation is being executed around 55000 times per second. This operation involves 5 routines, which acquire and release the FILSYS spinlock during operation:
MAPVBLK, UPDATE_EOF, CREATE_FCB, UPDATE_FILESIZE, ALLOCATE
Routine BUILD_EXT_FCBS calls at least 4 of these routines directly (3) or indirectly (1).
DEL_EXTFCB acquires the FILSYS spinlock about 23 times per second, but holds it for a very LONG time (about 28 ms !), so the DEL_EXTFCB operation under the FILSYS lock seems to be causing a problem. This is being confirmed by the PCS data !
Somehow a file with many extension headers must be involved in this...
Did you look at MONITOR FCP ? This should also show some unusual numbers.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-24-2010 08:44 AM
02-24-2010 08:44 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
$ DFU SEARCH/MULTIPLE diskname
Purely Personal Opinion
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-24-2010 10:56 AM
02-24-2010 10:56 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
another question comes to mind:
why is all the FILSYS spinlock activity happening on CPU 1 ? Is there a process with affinity set to CPU 1 ?
You may also want to edit SPL.COM to add
$ write outcom "spl start col/spin=FILSYS"
$ write outcom "wait 00:00:05"
$ write outcom "spl show col"
because this is really the only 'interesting' spinlock on this system.
Volker.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
02-26-2010 09:29 AM
02-26-2010 09:29 AM
Re: SHOW PROCESS/CONT shows PC=2BAD2BAD.CODE2BAD?
What I don't understand is why a channel to this file doesn't show up in a SDA> SHOW PROC/CHAN, otherwise I would have found this much sooner. I don't know what IBM/MQ is doing.
Also, the drive I was discussing all along has never been more than 5% full. It is surprising that the drive was as fragmented as it was.