The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
cron.php high cpu usage
cron.php process cause high cpu usage and it seems loop problem and does not finish
i have to kill this process each time. please help me 23618 (Trace) (Kill) accountname 0 50.0 0.1 /usr/bin/php /home/accountname/public_html/cron.php trace info: Process 23618 attached - interrupt to quit poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) Im waiting for your advices friends. im using vbulletin 3.8.8 mysql version: 5.6.23 php: 5.5.22 --------------- Added [DATE]1426757762[/DATE] at [TIME]1426757762[/TIME] --------------- this also run triple or more in the same time together 23618 (Trace) (Kill) vbulletin 0 49.7 0.1 /usr/bin/php /home/vbulletin/public_html/cron.php 26211 (Trace) (Kill) vbulletin 0 49.5 0.1 /usr/bin/php /home/vbulletin/public_html/cron.php 24064 (Trace) (Kill) vbulletin 0 45.1 0.1 /usr/bin/php /home/vbulletin/public_html/cron.php and trace info are same for all |
#2
|
||||
|
||||
Do you have an events mod installed? If so then I would suggest that you go to that thread and post there for help. That is most likely due to a plugin or mod you have installed on the site.
|
#3
|
|||
|
|||
You could try somehow narrowing it down to which scheduled task is causing the problem. That looks like a loop that's reading data from a socket, so maybe something that makes a network connection, in case that helps. It might help if you know about what time or times during the day that he problem starts, then compare that to your scheduled tasks.
|
#4
|
|||
|
|||
@hm666:
no, i dont know this mod and i have not installed this @kh99 everything was ok and i did not installed anything special recently i just updated my php and mysql to 5.6.23 may this cause such problem this process cause high cpu usage for my server please help me find the problem this cron will run automatically 4 time a day and if i dont kill it all 4 crons will be run together with same info as below: i can't get it's running time as apache trace not giving me time/date in below info Process 23618 attached - interrupt to quit poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK, NULL, NULL) = 1 poll([{fd=5, events=POLLIN|POLLPRI|POLLERR|POLLHUP}], 1, 0) = 1 ([{fd=5, revents=POLLIN}]) recvfrom(5, "H", 1, MSG_PEEK |
#5
|
||||
|
||||
What mods do you have installed? List them or take a screenshot and post the image here as an attachment or upload to an image hosting site and provide a link to the image. Its more than likely a scheduled task (or plugin in a mod that adds a scheduled task) which shows events (Calendar maybe) OR Polls from the looks of it.
Unless someone comes along whose ran into this issue before, I myself and others can't simply tell from code being pasted all the time, its not always possible to help that way unfortunately so the more information you can give, the better. |
#6
|
|||
|
|||
Quote:
Quote:
I don't see anything that runs 4 times a day by default, but I guess if a scheduled task fails to complete it might be scheduled to run again, I'm not sure. Have you looked at the scheduled task log? Maybe you can edit each scheduled task and set "Log Entries" to Yes. It looks like most tasks log at the end, so if you turn loggin on for all of them you mgiht be able to figure it out by seeing which one is not being logged. |
#7
|
||||
|
||||
What version of vBulletin on the server and what version of PHP did you upgrade the server to? Of the 3.x series, the earliest version compatible with PHP5.4 is 3.8.8 and the earliest version compatible with PHP5.5 is 3.8.9.
|
#8
|
|||
|
|||
Quote:
vBulletin? v3.8.8 Patch Level 1 Server Type Linux Web Server Apache (cgi-fcgi) PHP 5.5.22 PHP Max Post Size 64.00 PHP Maximum Upload Size 64.00 PHP Memory Limit 512.00 MySQL Version 5.6.23 MySQL Packet Size so u recommend me upgrade to 3.8.9? as my php is 5.5 --------------- Added [DATE]1426973112[/DATE] at [TIME]1426973112[/TIME] --------------- Quote:
RSS Poster Robot Reads RSS feeds from the internet and inserts them into your board as threads or announcements. 23:50 25, 55 * * * * Event Reminder This script sends out calendar event reminders twice an hour. today 23:55 56 * * * * Thread Views This script updates thread views once per hour. This option is suggested for forums with large numbers of threads or users. today 23:56 00 2 * * * DragonByte Tech: SEO - Generate XML Sitemap Generates each part of the XML sitemap one of the time. This task only actually runs if the option to generate the sitemap is enabled. today 01:00 05 * * * * Hourly Cleanup This script performs various cleanup tasks once per hour. today 01:05 10 * * * * بازدید This script updates attachment views once an hour if the delayed attachment views option is enabled. This is suggested for forums with a large number of attachments or users. today 01:10 15 * * * * Restore Temporarily Banned Users This script restores the access of temporarily banned users once an hour. today 01:15 20, 50 * * * * Infractions Cleanup Removes expired infractions twice an hour. today 01:20 25 * * * * User Promotions This script performs usergroup promotions once per hour. today 01:25 30 2 * * * Auto Thread Tagger Tags non tagged threads today 01:30 00 0 * * * (Pro) DragonByte Tech: SEO - Prune Log Entries Generates each part of the XML sitemap one of the time. This task only actually runs if the option to generate the sitemap is enabled. 22 March 2015 23:00 00 0 * * * Daily Statistics Log This script updates forum stats once per day. These are the stats that are accessed from the Admin Control Panel (New Users, New Threads, New Posts, Active Users). 22 March 2015 23:00 02 0 * * * Subscriptions Once per day, this script removes expired paid subscriptions as well as sends out reminders about soon to expire subscriptions. 22 March 2015 23:02 02 0 * * * Daily Digest This script sends out new post and new thread digests once per day. 22 March 2015 23:02 10 0 * * * Daily Cleanup This script performs various cleanup tasks once per day. 22 March 2015 23:10 30 0 * * monday Weekly Digest This script sends out new post and new thread digests once per week |
#9
|
||||
|
||||
Yes, I would recommend that.
|
#10
|
||||
|
||||
Possibly your problem is related to this?
Quote:
|
Thread Tools | |
Display Modes | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|