Created
December 5, 2014 14:46
-
-
Save galexite/42563658a8b04c33086a to your computer and use it in GitHub Desktop.
userlandfs git diff to make compilation work on GCC 4 x86_64 builds.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| diff --git a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystem.cpp b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystem.cpp | |
| index 5c76c75..3650953 100644 | |
| --- a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystem.cpp | |
| +++ b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystem.cpp | |
| @@ -221,7 +221,7 @@ FileSystem::~FileSystem() | |
| ops = next; | |
| } | |
| if (count > 0) | |
| - WARN(("Deleted %ld vnode ops vectors!\n", count)); | |
| + WARN(("Deleted %ld vnode ops vectors!\n", (long int)count)); | |
| mutex_destroy(&fVolumeLock); | |
| @@ -357,7 +357,7 @@ FileSystem::GetPortPool() | |
| // Mount | |
| status_t | |
| -FileSystem::Mount(fs_volume* fsVolume, const char* device, uint32 flags, | |
| +FileSystem::Mount(fs_volume* fsVolume, const char* device, ulong flags, | |
| const char* parameters, Volume** _volume) | |
| { | |
| // check initialization and parameters | |
| diff --git a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystemInitializer.cpp b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystemInitializer.cpp | |
| index 4cf4946..c120ef3 100644 | |
| --- a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystemInitializer.cpp | |
| +++ b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/FileSystemInitializer.cpp | |
| @@ -63,7 +63,7 @@ FileSystemInitializer::FirstTimeInit() | |
| // prepare the command line arguments | |
| char portID[16]; | |
| - snprintf(portID, sizeof(portID), "%ld", port); | |
| + snprintf(portID, sizeof(portID), "%ld", (long int)port); | |
| const char* args[4] = { | |
| "/system/servers/userlandfs_server", | |
| diff --git a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelDebug.cpp b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelDebug.cpp | |
| index f033f99..4953644 100644 | |
| --- a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelDebug.cpp | |
| +++ b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelDebug.cpp | |
| @@ -33,7 +33,7 @@ KernelDebug::DebugUFS(int argc, char** argv) | |
| int32 volumeCount = fs->fVolumes.Count(); | |
| for (int32 i = 0; i < volumeCount; i++) { | |
| Volume* volume = fs->fVolumes.ElementAt(i); | |
| - kprintf(" volume %p: %ld\n", volume, volume->GetID()); | |
| + kprintf(" volume %p: %ld\n", volume, (long int)volume->GetID()); | |
| } | |
| } | |
| } | |
| @@ -56,7 +56,7 @@ KernelDebug::DebugPortPool(int argc, char** argv) | |
| kprintf("used ports:\n"); | |
| for (int32 i = portPool->fFreePorts; i < portPool->fPortCount; i++) { | |
| kprintf(" port %p, owner: %ld, count: %ld\n", portPool->fPorts[i].port, | |
| - portPool->fPorts[i].owner, portPool->fPorts[i].count); | |
| + (long int)portPool->fPorts[i].owner, (long int)(portPool->fPorts[i].count)); | |
| } | |
| return 0; | |
| } | |
| @@ -71,12 +71,12 @@ KernelDebug::DebugPort(int argc, char** argv) | |
| } | |
| RequestPort *port = (RequestPort*)parse_expression(argv[1]); | |
| kprintf("port %p:\n", port); | |
| - kprintf(" status : %lx\n", port->fPort.fInitStatus); | |
| + kprintf(" status : %lx\n", (long unsigned int)port->fPort.fInitStatus); | |
| kprintf(" is owner : %d\n", port->fPort.fOwner); | |
| - kprintf(" owner port: %ld\n", port->fPort.fInfo.owner_port); | |
| - kprintf(" client port: %ld\n", port->fPort.fInfo.client_port); | |
| - kprintf(" size: %ld\n", port->fPort.fInfo.size); | |
| - kprintf(" capacity: %ld\n", port->fPort.fCapacity); | |
| + kprintf(" owner port: %ld\n", (long int)port->fPort.fInfo.owner_port); | |
| + kprintf(" client port: %ld\n", (long int)port->fPort.fInfo.client_port); | |
| + kprintf(" size: %ld\n", (long int)port->fPort.fInfo.size); | |
| + kprintf(" capacity: %ld\n", (long int)port->fPort.fCapacity); | |
| kprintf(" buffer: %p\n", port->fPort.fBuffer); | |
| return 0; | |
| } | |
| diff --git a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelRequestHandler.cpp b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelRequestHandler.cpp | |
| index 5bdbbb7..ce31508 100644 | |
| --- a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelRequestHandler.cpp | |
| +++ b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/KernelRequestHandler.cpp | |
| @@ -168,7 +168,7 @@ KernelRequestHandler::_HandleRequest(NotifyListenerRequest* request) | |
| case B_ATTR_CHANGED: | |
| if (!name) { | |
| ERROR(("NotifyListenerRequest: NULL name for opcode: %ld\n", | |
| - request->operation)); | |
| + (long int)request->operation)); | |
| result = B_BAD_VALUE; | |
| } | |
| break; | |
| @@ -220,7 +220,7 @@ KernelRequestHandler::_HandleRequest(NotifyListenerRequest* request) | |
| default: | |
| ERROR(("NotifyQueryRequest: unsupported operation: %ld\n", | |
| - request->operation)); | |
| + (long int)request->operation)); | |
| result = B_BAD_VALUE; | |
| break; | |
| } | |
| @@ -315,7 +315,7 @@ KernelRequestHandler::_HandleRequest(NotifyQueryRequest* request) | |
| case B_ENTRY_MOVED: | |
| default: | |
| ERROR(("NotifyQueryRequest: unsupported operation: %ld\n", | |
| - request->operation)); | |
| + (long int)request->operation)); | |
| result = B_BAD_VALUE; | |
| break; | |
| } | |
| diff --git a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/Volume.cpp b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/Volume.cpp | |
| index bfa20f6..c38a71a 100644 | |
| --- a/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/Volume.cpp | |
| +++ b/src/add-ons/kernel/file_systems/userlandfs/kernel_add_on/Volume.cpp | |
| @@ -82,7 +82,7 @@ protected: // should be private, but gcc 2.95.3 issues a warning | |
| { | |
| if (fileCache != NULL) | |
| { | |
| - ERROR(("VNode %lld still has a file cache!\n", id)); | |
| + ERROR(("VNode %lld still has a file cache!\n", (long long int)id)); | |
| file_cache_delete(fileCache); | |
| } | |
| } | |
| @@ -436,7 +436,7 @@ PRINT(("publish_vnode(%ld, %lld, %p)\n", GetID(), vnid, clientNode)); | |
| if (nodeKnown) { | |
| if (node->published) { | |
| WARN(("publish_vnode(): vnode (%ld, %lld) already published!\n", | |
| - GetID(), vnid)); | |
| + (long int)GetID(), (long long int)vnid)); | |
| RETURN_ERROR(B_BAD_VALUE); | |
| } | |
| } else if (!nodeKnown) { | |
| @@ -4428,7 +4428,7 @@ Volume::_IncrementVNodeCount(ino_t vnid) | |
| VNode* vnode = fVNodes->Lookup(vnid); | |
| if (vnode == NULL) { | |
| ERROR(("Volume::_IncrementVNodeCount(): Node with ID %lld not " | |
| - "known!\n", vnid)); | |
| + "known!\n", (long long int)vnid)); | |
| return; | |
| } | |
| @@ -4449,7 +4449,7 @@ Volume::_DecrementVNodeCount(ino_t vnid) | |
| VNode* vnode = fVNodes->Lookup(vnid); | |
| if (vnode == NULL) { | |
| ERROR(("Volume::_DecrementVNodeCount(): Node with ID %lld not " | |
| - "known!\n", vnid)); | |
| + "known!\n", (long long int)vnid)); | |
| return; | |
| } | |
| @@ -4467,7 +4467,7 @@ Volume::_RemoveInvalidVNode(ino_t vnid) | |
| VNode* vnode = fVNodes->Lookup(vnid); | |
| if (vnode == NULL) { | |
| ERROR(("Volume::_RemoveInvalidVNode(): Node with ID %lld not known!\n", | |
| - vnid)); | |
| + (long long int)vnid)); | |
| return; | |
| } | |
| n; | |
| } | |
| @@ -4467,7 +4467,7 @@ Volume::_RemoveInvalidVNode(ino_t vnid) | |
| VNode* vnode = fVNodes->Lookup(vnid); | |
| if (vnode == NULL) { | |
| ERROR(("Volume::_RemoveInvalidVNode(): Node with ID %lld not known!\n", | |
| - vnid)); | |
| + (long long int)vnid)); | |
| return; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This is not the correct way to fix print formats. We have defined constants for that purpose. For example, int32 is a long int on 32bit, but an int on 64bit. So, to print it you should use:
printf("this is an int32: %" B_PRId32 "\n", value);
There are similar macros for various types (B_PRIdOFF for off_t, etc). format strings should use these instead of hardcoding d, ld, lld so they work on all platforms without needing to cast the values.