Changeset 54218 in vbox for trunk/include/VBox/vmm
- Timestamp:
- Feb 16, 2015 3:17:05 PM (10 years ago)
- svn:sync-xref-src-repo-rev:
- 98283
- Location:
- trunk/include/VBox/vmm
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/vmm/dbgf.h
r53615 r54218 1551 1551 /** Thread info. */ 1552 1552 DBGFOSINTERFACE_THREAD, 1553 /** Kernel message log - DBGFOSIDMESG. */ 1554 DBGFOSINTERFACE_DMESG, 1553 1555 /** The end of the valid entries. */ 1554 1556 DBGFOSINTERFACE_END, … … 1658 1660 * This is called after pfnProbe. 1659 1661 * 1662 * The returned interface must be valid until pfnDestruct is called. Two calls 1663 * to this method with the same @a enmIf value must return the same pointer. 1664 * 1660 1665 * @returns Pointer to the interface if available, NULL if not available. 1661 1666 * @param pUVM The user mode VM handle. … … 1676 1681 #define DBGFOSREG_MAGIC 0x19830808 1677 1682 1683 1684 /** 1685 * Interface for querying kernel log messages (DBGFOSINTERFACE_DMESG). 1686 */ 1687 typedef struct DBGFOSIDMESG 1688 { 1689 /** Trailing magic (DBGFOSIDMESG_MAGIC). */ 1690 uint32_t u32Magic; 1691 1692 /** 1693 * Query the kernel log. 1694 * 1695 * @returns VBox status code. 1696 * @retval VERR_NOT_FOUND if the messages could not be located. 1697 * @retval VERR_INVALID_STATE if the messages was found to have unknown/invalid 1698 * format. 1699 * @retval VERR_BUFFER_OVERFLOW if the buffer isn't large enough, pcbActual 1700 * will be set to the required buffer size. The buffer, however, will 1701 * be filled with as much data as it can hold (properly zero terminated 1702 * of course). 1703 * 1704 * @param pThis Pointer to the interface structure. 1705 * @param pUVM The user mode VM handle. 1706 * @param fFlags Flags reserved for future use, MBZ. 1707 * @param cMessages The number of messages to retrieve, counting from the 1708 * end of the log (i.e. like tail), use UINT32_MAX for all. 1709 * @param pszBuf The output buffer. 1710 * @param cbBuf The buffer size. 1711 * @param pcbActual Where to store the number of bytes actually returned, 1712 * including zero terminator. On VERR_BUFFER_OVERFLOW this 1713 * holds the necessary buffer size. Optional. 1714 */ 1715 DECLCALLBACKMEMBER(int, pfnQueryKernelLog)(struct DBGFOSIDMESG *pThis, PUVM pUVM, uint32_t fFlags, uint32_t cMessages, 1716 char *pszBuf, size_t cbBuf, size_t *pcbActual); 1717 /** Trailing magic (DBGFOSIDMESG_MAGIC). */ 1718 uint32_t u32EndMagic; 1719 } DBGFOSIDMESG; 1720 /** Pointer to the interface for query kernel log messages (DBGFOSINTERFACE_DMESG). */ 1721 typedef DBGFOSIDMESG *PDBGFOSIDMESG; 1722 /** Magic value for DBGFOSIDMESG::32Magic and DBGFOSIDMESG::u32EndMagic. (Kenazburo Oe) */ 1723 #define DBGFOSIDMESG_MAGIC UINT32_C(0x19350131) 1724 1725 1678 1726 VMMR3DECL(int) DBGFR3OSRegister(PUVM pUVM, PCDBGFOSREG pReg); 1679 1727 VMMR3DECL(int) DBGFR3OSDeregister(PUVM pUVM, PCDBGFOSREG pReg); -
trunk/include/VBox/vmm/uvm.h
r45189 r54218 143 143 struct DBGFUSERPERVM s; 144 144 #endif 145 uint8_t padding[ 256];145 uint8_t padding[384]; 146 146 } dbgf; 147 147 … … 167 167 RT_VALID_ALIGNED_PTR(a_pUVM, PAGE_SIZE) ? (a_pUVM)->u32Magic : 0), \ 168 168 (a_rc)) 169 /** @def UVM_ASSERT_VALID_EXT_RETURN 170 * Asserts a user mode VM handle is valid for external access. 171 */ 172 #define UVM_ASSERT_VALID_EXT_RETURN_VOID(a_pUVM) \ 173 AssertMsgReturnVoid( RT_VALID_ALIGNED_PTR(a_pUVM, PAGE_SIZE) \ 174 && (a_pUVM)->u32Magic == UVM_MAGIC, \ 175 ("a_pUVM=%p u32Magic=%#x\n", (a_pUVM), \ 176 RT_VALID_ALIGNED_PTR(a_pUVM, PAGE_SIZE) ? (a_pUVM)->u32Magic : 0)) 169 177 170 178 #endif
Note:
See TracChangeset
for help on using the changeset viewer.