Stewart Smith | 774fea1 | 2014-02-28 11:58:32 +1100 | [diff] [blame] | 1 | What: /sys/firmware/opal/elog |
| 2 | Date: Feb 2014 |
| 3 | Contact: Stewart Smith <stewart@linux.vnet.ibm.com> |
| 4 | Description: |
| 5 | This directory exposes error log entries retrieved |
| 6 | through the OPAL firmware interface. |
| 7 | |
| 8 | Each error log is identified by a unique ID and will |
| 9 | exist until explicitly acknowledged to firmware. |
| 10 | |
| 11 | Each log entry has a directory in /sys/firmware/opal/elog. |
| 12 | |
| 13 | Log entries may be purged by the service processor |
| 14 | before retrieved by firmware or retrieved/acknowledged by |
| 15 | Linux if there is no room for more log entries. |
| 16 | |
| 17 | In the event that Linux has retrieved the log entries |
| 18 | but not explicitly acknowledged them to firmware and |
| 19 | the service processor needs more room for log entries, |
| 20 | the only remaining copy of a log message may be in |
| 21 | Linux. |
| 22 | |
| 23 | Typically, a user space daemon will monitor for new |
| 24 | entries, read them out and acknowledge them. |
| 25 | |
| 26 | The service processor may be able to store more log |
| 27 | entries than firmware can, so after you acknowledge |
| 28 | an event from Linux you may instantly get another one |
| 29 | from the queue that was generated some time in the past. |
| 30 | |
| 31 | The raw log format is a binary format. We currently |
| 32 | do not parse this at all in kernel, leaving it up to |
| 33 | user space to solve the problem. In future, we may |
| 34 | do more parsing in kernel and add more files to make |
| 35 | it easier for simple user space processes to extract |
| 36 | more information. |
| 37 | |
| 38 | For each log entry (directory), there are the following |
| 39 | files: |
| 40 | |
| 41 | id: An ASCII representation of the ID of the |
| 42 | error log, in hex - e.g. "0x01". |
| 43 | |
| 44 | type: An ASCII representation of the type id and |
| 45 | description of the type of error log. |
| 46 | Currently just "0x00 PEL" - platform error log. |
| 47 | In the future there may be additional types. |
| 48 | |
| 49 | raw: A read-only binary file that can be read |
| 50 | to get the raw log entry. These are |
| 51 | <16kb, often just hundreds of bytes and |
| 52 | "average" 2kb. |
| 53 | |
| 54 | acknowledge: Writing 'ack' to this file will acknowledge |
| 55 | the error log to firmware (and in turn |
| 56 | the service processor, if applicable). |
| 57 | Shortly after acknowledging it, the log |
| 58 | entry will be removed from sysfs. |
| 59 | Reading this file will list the supported |
Masanari Iida | 83432ef | 2015-10-13 23:40:34 +0900 | [diff] [blame] | 60 | operations (currently just acknowledge). |