[haiku-commits] BRANCH xyzzy-github.x86_64 - src/add-ons/kernel/network/protocols/tcp src/add-ons/kernel/network/stack build/jam src/add-ons/kernel/drivers/network/sis19x src/add-ons/kernel/drivers/network/pegasus

  • From: xyzzy-github.x86_64 <community@xxxxxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Fri, 10 Aug 2012 15:49:19 +0200 (CEST)

added 1 changeset to branch 'refs/remotes/xyzzy-github/x86_64'
old head: 2b861dd2a5a8129154c0c3003d816d2912890c27
new head: 6d796a84bd484ccc4fb072a29c663b660180ae51

----------------------------------------------------------------------------

6d796a8: Fixed up network stack and drivers for x86_64.
  
  * Various compilation fixes.
  * Fixes to the FreeBSD compatibility layer (from comparing the x86-
    specific bits with the equivalent amd64 sources in FreeBSD).
  * Compile all the Ethernet drivers except for sis900 and wb840, these
    require a bit more work to fix (will file a ticket soon). Tested
    ipro1000 and rtl81xx, no issues.

                                      [ Alex Smith <alex@xxxxxxxxxxxxxxxx> ]

----------------------------------------------------------------------------

Commit:      6d796a84bd484ccc4fb072a29c663b660180ae51

Author:      Alex Smith <alex@xxxxxxxxxxxxxxxx>
Date:        Fri Aug 10 13:30:54 2012 UTC

----------------------------------------------------------------------------

30 files changed, 164 insertions(+), 103 deletions(-)
build/jam/Haiku64Image                             |   39 +++++++++---
headers/private/net/net_buffer.h                   |    4 +-
.../kernel/drivers/network/etherpci/etherpci.c     |    8 +--
.../kernel/drivers/network/pegasus/driver.c        |   18 +++---
.../kernel/drivers/network/sis19x/DataRing.cpp     |   16 +++--
.../kernel/drivers/network/sis19x/Device.cpp       |    3 +-
.../kernel/drivers/network/sis19x/Driver.cpp       |    2 +-
.../kernel/drivers/network/sis19x/Settings.cpp     |    2 +-
.../kernel/network/protocols/icmp6/icmp6.cpp       |    3 +-
.../kernel/network/protocols/tcp/BufferQueue.cpp   |    8 +--
.../kernel/network/protocols/tcp/TCPEndpoint.cpp   |   53 +++++++++-------
src/add-ons/kernel/network/protocols/udp/udp.cpp   |    2 +-
.../kernel/network/protocols/unix/UnixAddress.cpp  |    8 ++-
.../kernel/network/protocols/unix/UnixEndpoint.cpp |    2 +-
.../kernel/network/protocols/unix/UnixFifo.cpp     |    4 +-
.../kernel/network/stack/device_interfaces.cpp     |    4 +-
src/add-ons/kernel/network/stack/domains.cpp       |    4 +-
src/add-ons/kernel/network/stack/interfaces.cpp    |    2 +-
src/add-ons/kernel/network/stack/net_buffer.cpp    |   10 +--
src/add-ons/kernel/network/stack/net_socket.cpp    |    8 +--
src/add-ons/kernel/network/stack/stack.cpp         |    6 +-
src/add-ons/kernel/network/stack/utility.cpp       |    4 +-
src/libs/compat/freebsd_network/bus.cpp            |    2 +-
src/libs/compat/freebsd_network/compat.c           |   10 +--
.../compat/freebsd_network/compat/machine/_bus.h   |   16 +++++
.../compat/freebsd_network/compat/machine/bus.h    |    6 +-
src/libs/compat/freebsd_network/compat/vm/vm.h     |    9 ++-
src/libs/compat/freebsd_network/device.c           |    2 +-
src/libs/compat/freebsd_network/fbsd_busdma_x86.c  |   10 ++-
src/servers/net/Services.cpp                       |    2 +-

----------------------------------------------------------------------------

diff --git a/build/jam/Haiku64Image b/build/jam/Haiku64Image
index 05326e8..a1cc88d 100644
--- a/build/jam/Haiku64Image
+++ b/build/jam/Haiku64Image
@@ -24,15 +24,15 @@ SYSTEM_BIN = "[" addattr base64 basename bash beep cal cat 
catattr chgrp chmod
        copyattr cp csplit cut date dd diff diff3 dircolors dirname df du
        dumpcatalog echo eject env error expand expr factor false find finddir
        fmt fold fortune gawk gdb gzip gzexe getlimits groups head hostname id
-       <bin>install isvolume join kernel_debugger kill less lessecho lesskey 
link
-       linkcatkeys listdev ln locale locate logger logname ls md5sum mkdir 
mkfifo
-       mktemp mount mountvolume mv nl nohup nproc od paste patch pathchk pr
-       printenv printf ps ptx pwd readlink ReadOnlyBootPrompt rm rmattr rmdir
-       safemode sdiff seq sha1sum shred shuf sleep sort split stat strace stty 
su
-       sum sync sysinfo tac tail tee test timeout touch tr true truncate tsort 
tty
-       unexpand uname uniq unlink unmount unzip <bin>updatedb waitfor wc whoami
-       xargs xres yes zdiff zforce zgrep zip zipcloak <bin>zipgrep zipnote
-       zipsplit zmore znew
+       ifconfig <bin>install isvolume join kernel_debugger kill less lessecho
+       lesskey link linkcatkeys listdev ln locale locate logger logname ls 
md5sum
+       mkdir mkfifo mktemp mount mountvolume mv nl nohup nproc od paste patch
+       pathchk ping pr printenv printf ps ptx pwd readlink ReadOnlyBootPrompt 
rm
+       rmattr rmdir safemode sdiff seq sha1sum shred shuf sleep sort split stat
+       strace stty su sum sync sysinfo tac tail tee test timeout touch tr true
+       truncate tsort tty unexpand uname uniq unlink unmount unzip 
<bin>updatedb
+       waitfor wc wget whoami xargs xres yes zdiff zforce zgrep zip zipcloak
+       <bin>zipgrep zipnote zipsplit zmore znew
 ;
 
 SYSTEM_APPS = AboutSystem Terminal ;
@@ -55,9 +55,14 @@ SYSTEM_LIBS = libbe.so libbnetapi.so libdebug.so libjpeg.so 
libnetwork.so
 PRIVATE_SYSTEM_LIBS = libilmimf.so ;
 
 SYSTEM_SERVERS = app_server debug_server input_server mount_server
-       notification_server registrar syslog_daemon
+       net_server notification_server registrar syslog_daemon
 ;
 
+SYSTEM_NETWORK_DEVICES = ethernet loopback ;
+SYSTEM_NETWORK_DATALINK_PROTOCOLS = ethernet_frame <module>arp loopback_frame
+       ipv6_datagram ;
+SYSTEM_NETWORK_PROTOCOLS = ipv4 tcp udp icmp unix icmp6 ipv6 ;
+
 SYSTEM_ADD_ONS_ACCELERANTS = vesa.accelerant ;
 SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator GIFTranslator
        HVIFTranslator ICOTranslator JPEGTranslator JPEG2000Translator
@@ -67,6 +72,11 @@ SYSTEM_ADD_ONS_TRANSLATORS = BMPTranslator EXRTranslator 
GIFTranslator
 ;
 
 SYSTEM_ADD_ONS_DRIVERS_GRAPHICS = vesa ;
+SYSTEM_ADD_ONS_DRIVERS_NET = 3com atheros813x ar81xx attansic_l1 attansic_l2
+       broadcom440x broadcom570x dec21xxx etherpci ipro100 ipro1000 jmicron2x0
+       marvell_yukon nforce pcnet pegasus rtl8139 rtl81xx sis19x syskonnect
+       via_rhine
+;
 
 SYSTEM_ADD_ONS_BUS_MANAGERS =  $(ATA_ONLY)ata pci ps2 isa scsi config_manager
        usb ;
@@ -105,6 +115,7 @@ AddDriversToHaikuImage                              : 
console dprintf null
 AddDriversToHaikuImage graphics                : 
$(SYSTEM_ADD_ONS_DRIVERS_GRAPHICS) ;
 AddDriversToHaikuImage disk usb                : usb_disk ;
 AddDriversToHaikuImage input           : ps2_hid usb_hid ;
+AddDriversToHaikuImage net                     : $(SYSTEM_ADD_ONS_DRIVERS_NET) 
;
 
 # kernel
 AddFilesToHaikuImage system : kernel_$(TARGET_ARCH) ;
@@ -310,6 +321,14 @@ AddFilesToHaikuHybridImage system add-ons Translators
        : $(SYSTEM_ADD_ONS_TRANSLATORS) : : true ;
 AddFilesToHaikuImage system add-ons input_server devices
        : <input>keyboard <input>mouse <input>tablet <input>wacom ;
+AddFilesToHaikuImage system add-ons kernel network
+       : <net>notifications stack ;
+AddFilesToHaikuImage system add-ons kernel network devices
+       : $(SYSTEM_NETWORK_DEVICES) ;
+AddFilesToHaikuImage system add-ons kernel network datalink_protocols
+       : $(SYSTEM_NETWORK_DATALINK_PROTOCOLS) ;
+AddFilesToHaikuImage system add-ons kernel network protocols
+       : $(SYSTEM_NETWORK_PROTOCOLS) ;
 
 # create directories that will remain empty
 AddDirectoryToHaikuImage common bin ;
diff --git a/headers/private/net/net_buffer.h b/headers/private/net/net_buffer.h
index 6afc4d0..809fa93 100644
--- a/headers/private/net/net_buffer.h
+++ b/headers/private/net/net_buffer.h
@@ -85,9 +85,9 @@ struct net_buffer_module_info {
 
        status_t                (*direct_access)(net_buffer* buffer, uint32 
offset,
                                                size_t bytes, void** _data);
-       status_t                (*read)(net_buffer* buffer, uint32 offset, 
void* data,
+       status_t                (*read)(net_buffer* buffer, size_t offset, 
void* data,
                                                size_t bytes);
-       status_t                (*write)(net_buffer* buffer, uint32 offset,
+       status_t                (*write)(net_buffer* buffer, size_t offset,
                                                const void* data, size_t bytes);
 
        int32                   (*checksum)(net_buffer* buffer, uint32 offset, 
size_t bytes,
diff --git a/src/add-ons/kernel/drivers/network/etherpci/etherpci.c 
b/src/add-ons/kernel/drivers/network/etherpci/etherpci.c
index 7b20fdd..98146ac 100644
--- a/src/add-ons/kernel/drivers/network/etherpci/etherpci.c
+++ b/src/add-ons/kernel/drivers/network/etherpci/etherpci.c
@@ -370,10 +370,10 @@ output_count(etherpci_private_t *data)
 /*
  * How many waiting for input?
  */
-static long
+static int32
 input_count(etherpci_private_t *data)
 {
-       long count;
+       int32 count;
 
        get_sem_count(data->ilock, &count);
        return (count);
@@ -1207,7 +1207,7 @@ enable_addressing(etherpci_private_t *data)
        data->reg_base = data->reg_base + offset;
 
 #endif
-       dprintf(kDevName ": reg_base=%lx\n", data->reg_base);
+       dprintf(kDevName ": reg_base=%" B_PRIx32 "\n", data->reg_base);
 
        /* enable pci address access */
        cmd = (gPCIModInfo->read_pci_config)(data->pciInfo->bus, 
data->pciInfo->device, data->pciInfo->function, PCI_command, 2);
@@ -1377,7 +1377,7 @@ init_driver(void)
        /* Create device name list*/
        for (i=0; i<entries; i++ )
        {
-               sprintf(devName, "%s%ld", kDevDir, i );
+               sprintf(devName, "%s%" B_PRId32, kDevDir, i );
                gDevNameList[i] = (char *)malloc(strlen(devName)+1);
                strcpy(gDevNameList[i], devName);
        }
diff --git a/src/add-ons/kernel/drivers/network/pegasus/driver.c 
b/src/add-ons/kernel/drivers/network/pegasus/driver.c
index 0569bac..8398bbd 100644
--- a/src/add-ons/kernel/drivers/network/pegasus/driver.c
+++ b/src/add-ons/kernel/drivers/network/pegasus/driver.c
@@ -186,14 +186,14 @@ create_device(const usb_device dev, const 
usb_interface_info *ii, uint16 ifno)
 
        device->sem_lock = sem = create_sem(1, DRIVER_NAME "_lock");
        if (sem < B_OK) {
-               DPRINTF_ERR("create_sem() failed 0x%lx\n", sem);
+               DPRINTF_ERR("create_sem() failed 0x%" B_PRIx32 "\n", sem);
                free(device);
                return NULL;
        }
        
        device->rx_sem = sem = create_sem(1, DRIVER_NAME"_receive");
        if (sem < B_OK) {
-               DPRINTF_ERR("create_sem() failed 0x%lx\n", sem);
+               DPRINTF_ERR("create_sem() failed 0x%" B_PRIx32 "\n", sem);
                delete_sem(device->sem_lock);
                free(device);
                return NULL;
@@ -202,7 +202,7 @@ create_device(const usb_device dev, const 
usb_interface_info *ii, uint16 ifno)
 
        device->rx_sem_cb = sem = create_sem(0, DRIVER_NAME"_receive_cb");
        if (sem < B_OK) {
-               DPRINTF_ERR("create_sem() failed 0x%lx\n", sem);
+               DPRINTF_ERR("create_sem() failed 0x%" B_PRIx32 "\n", sem);
                delete_sem(device->rx_sem);
                delete_sem(device->sem_lock);
                free(device);
@@ -499,7 +499,7 @@ pegasus_device_read(driver_cookie *cookie, off_t position, 
void *buffer, size_t
 
        // block until receive is available (if blocking is allowed)
        if ((status = acquire_sem_etc(dev->rx_sem, 1, B_CAN_INTERRUPT | 
blockFlag, 0)) != B_NO_ERROR) {
-               DPRINTF_ERR("cannot acquire read sem: %lx, %s\n", status, 
strerror(status));
+               DPRINTF_ERR("cannot acquire read sem: %" B_PRIx32 ", %s\n", 
status, strerror(status));
 #ifndef __HAIKU__
                *_length = 0;
 #endif
@@ -510,13 +510,13 @@ pegasus_device_read(driver_cookie *cookie, off_t 
position, void *buffer, size_t
        status = usb->queue_bulk(dev->pipe_in, dev->rx_buffer, MAX_FRAME_SIZE, 
&pegasus_rx_callback, dev);
        
        if (status != B_OK) {
-               DPRINTF_ERR("queue_bulk:failed:%08lx\n", status);
+               DPRINTF_ERR("queue_bulk:failed:%08" B_PRIx32 "\n", status);
                goto rx_done;
        }
        
        // block until data is available (if blocking is allowed)
        if ((status = acquire_sem_etc(dev->rx_sem_cb, 1, B_CAN_INTERRUPT | 
blockFlag, 0)) != B_NO_ERROR) {
-               DPRINTF_ERR("cannot acquire read sem: %lx, %s\n", status, 
strerror(status));
+               DPRINTF_ERR("cannot acquire read sem: %" B_PRIx32 ", %s\n", 
status, strerror(status));
 #ifndef __HAIKU__
                *_length = 0;
 #endif
@@ -567,7 +567,7 @@ pegasus_device_write(driver_cookie *cookie, off_t position, 
const void *buffer,
        
                // block until a free tx descriptor is available
        if ((status = acquire_sem_etc(dev->tx_sem, 1, B_TIMEOUT, 
ETHER_TRANSMIT_TIMEOUT)) < B_NO_ERROR) {
-               DPRINTF_ERR("write: acquiring sem failed: %lx, %s\n", status, 
strerror(status));
+               DPRINTF_ERR("write: acquiring sem failed: %" B_PRIx32 ", %s\n", 
status, strerror(status));
                return status;
        }
 
@@ -594,13 +594,13 @@ pegasus_device_write(driver_cookie *cookie, off_t 
position,       const void *buffer,
                &pegasus_tx_callback, dev);
        
        if (status != B_OK){
-               DPRINTF_ERR("queue_bulk:failed:%08lx\n", status);
+               DPRINTF_ERR("queue_bulk:failed:%08" B_PRIx32 "\n", status);
                goto tx_done;
        }       
        
        // block until data is sent (if blocking is allowed)
        if ((status = acquire_sem_etc(dev->tx_sem_cb, 1, B_CAN_INTERRUPT, 0)) 
!= B_NO_ERROR) {
-               DPRINTF_ERR("cannot acquire write done sem: %lx, %s\n", status, 
strerror(status));
+               DPRINTF_ERR("cannot acquire write done sem: %" B_PRIx32 ", 
%s\n", status, strerror(status));
 #ifndef __HAIKU__
                *_length = 0;
 #endif
diff --git a/src/add-ons/kernel/drivers/network/sis19x/DataRing.cpp 
b/src/add-ons/kernel/drivers/network/sis19x/DataRing.cpp
index 51150d8..e347899 100644
--- a/src/add-ons/kernel/drivers/network/sis19x/DataRing.cpp
+++ b/src/add-ons/kernel/drivers/network/sis19x/DataRing.cpp
@@ -197,8 +197,8 @@ DataRing<TxDescriptor, TxDescriptorsCount>::Dump()
 {
        int32 count = 0;
        get_sem_count(fSemaphore, &count);
-       kprintf("Tx:[count:%ld] head:%lu tail:%lu dirty:%lu\n",
-                       count, fHead, fTail, fHead - fTail);
+       kprintf("Tx:[count:%" B_PRId32 "] head:%" B_PRIu32 " tail:%" B_PRIu32 " 
"
+                       "dirty:%" B_PRIu32 "\n", count, fHead, fTail, fHead - 
fTail);
 
        kprintf("\tPktSize\t\tCmdStat\t\tBufPtr\t\tEOD\n");
 
@@ -206,8 +206,9 @@ DataRing<TxDescriptor, TxDescriptorsCount>::Dump()
                volatile TxDescriptor& D = fDescriptors[i];
                char marker = ((fTail % TxDescriptorsCount) == i) ? '=' : ' ';
                marker = ((fHead % TxDescriptorsCount) == i) ? '>' : marker;
-               kprintf("%02lx %c\t%08lx\t%08lx\t%08lx\t%08lx\n", i, marker,
-                               D.fPacketSize, D.fCommandStatus, 
D.fBufferPointer, D.fEOD);
+               kprintf("%02lx %c\t%08" B_PRIx32 "\t%08" B_PRIx32 "\t%08" 
B_PRIx32
+                               "\t%08" B_PRIx32 "\n", i, marker, D.fPacketSize,
+                               D.fCommandStatus, D.fBufferPointer, D.fEOD);
        }
 }
 
@@ -335,8 +336,8 @@ DataRing<RxDescriptor, RxDescriptorsCount>::Dump()
 {
        int32 count = 0;
        get_sem_count(fSemaphore, &count);
-       kprintf("Rx:[count:%ld] head:%lu tail:%lu dirty:%lu\n",
-                       count, fHead, fTail, fHead - fTail);
+       kprintf("Rx:[count:%" B_PRId32 "] head:%" B_PRIu32 " tail:%" B_PRIu32 " 
"
+                       "dirty:%" B_PRIu32 "\n", count, fHead, fTail, fHead - 
fTail);
 
        for (size_t i = 0; i < 2; i++) {
                kprintf("\tStatSize\tPktInfo\t\tBufPtr\t\tEOD      %c",
@@ -344,7 +345,8 @@ DataRing<RxDescriptor, RxDescriptorsCount>::Dump()
        }
 
        for (size_t i = 0; i < RxDescriptorsCount / 2; i++) {
-               const char* mask = "%02lx %c\t%08lx\t%08lx\t%08lx\t%08lx %c";
+               const char* mask = "%02" B_PRIx32 " %c\t%08" B_PRIx32 "\t%08" 
B_PRIx32
+                       "\t%08" B_PRIx32 "\t%08" B_PRIx32 " %c";
 
                for (size_t ii = 0; ii < 2; ii++) {
                        size_t index = ii == 0 ? i : (i + RxDescriptorsCount / 
2);
diff --git a/src/add-ons/kernel/drivers/network/sis19x/Device.cpp 
b/src/add-ons/kernel/drivers/network/sis19x/Device.cpp
index 6fcd5d9..feb94f5 100644
--- a/src/add-ons/kernel/drivers/network/sis19x/Device.cpp
+++ b/src/add-ons/kernel/drivers/network/sis19x/Device.cpp
@@ -736,7 +736,8 @@ Device::DumpRegisters()
 
        for (size_t i = 0; i < _countof(RegisterEntries); i++) {
                uint32 registerContents = ReadPCI32(RegisterEntries[i].Base);
-               kprintf("%s:\t%08lx\n", RegisterEntries[i].Name, 
registerContents);
+               kprintf("%s:\t%08" B_PRIx32 "\n", RegisterEntries[i].Name,
+                       registerContents);
                if (RegisterEntries[i].writeBack) {
                        WritePCI32(RegisterEntries[i].Base, registerContents);
                }
diff --git a/src/add-ons/kernel/drivers/network/sis19x/Driver.cpp 
b/src/add-ons/kernel/drivers/network/sis19x/Driver.cpp
index bfce9df..bb8bcf0 100644
--- a/src/add-ons/kernel/drivers/network/sis19x/Driver.cpp
+++ b/src/add-ons/kernel/drivers/network/sis19x/Driver.cpp
@@ -83,7 +83,7 @@ static int SiS19X_DebuggerCommand(int argc, char** argv)
        }
 
        if (cardId >= numCards) {
-               kprintf("%lld - invalid index.\n", cardId);
+               kprintf("%" B_PRId64 " - invalid index.\n", cardId);
                kprintf(usageInfo);
                return 0;
        }
diff --git a/src/add-ons/kernel/drivers/network/sis19x/Settings.cpp 
b/src/add-ons/kernel/drivers/network/sis19x/Settings.cpp
index 007d45f..f253af6 100644
--- a/src/add-ons/kernel/drivers/network/sis19x/Settings.cpp
+++ b/src/add-ons/kernel/drivers/network/sis19x/Settings.cpp
@@ -101,7 +101,7 @@ void SiS19X_trace(bool force, const char* func, const char 
*fmt, ...)
                bigtime_t time = system_time();
                uint32 msec = time / 1000;
                uint32 sec  = msec / 1000;
-               sprintf(buf_ptr, "%02ld.%02ld.%03ld:",
+               sprintf(buf_ptr, "%02" B_PRId32 ".%02" B_PRId32 ".%03" B_PRId32 
":",
                        sec / 60, sec % 60, msec % 1000);
                buf_ptr += strlen(buf_ptr);
        }
diff --git a/src/add-ons/kernel/network/protocols/icmp6/icmp6.cpp 
b/src/add-ons/kernel/network/protocols/icmp6/icmp6.cpp
index d800811..4f2dd1d 100644
--- a/src/add-ons/kernel/network/protocols/icmp6/icmp6.cpp
+++ b/src/add-ons/kernel/network/protocols/icmp6/icmp6.cpp
@@ -218,7 +218,8 @@ get_domain(struct net_buffer* buffer)
 status_t
 icmp6_receive_data(net_buffer *buffer)
 {
-       TRACE(("ICMPv6 received some data, buffer length %lu\n", buffer->size));
+       TRACE(("ICMPv6 received some data, buffer length %" B_PRIu32 "\n",
+               buffer->size));
 
        net_domain* domain = get_domain(buffer);
        if (domain == NULL)
diff --git a/src/add-ons/kernel/network/protocols/tcp/BufferQueue.cpp 
b/src/add-ons/kernel/network/protocols/tcp/BufferQueue.cpp
index 5a5b2ce..de83ba3 100644
--- a/src/add-ons/kernel/network/protocols/tcp/BufferQueue.cpp
+++ b/src/add-ons/kernel/network/protocols/tcp/BufferQueue.cpp
@@ -310,8 +310,8 @@ BufferQueue::Get(net_buffer *buffer, tcp_sequence sequence, 
size_t bytes)
        if (source == NULL)
                panic("we should have had that data...");
        if (tcp_sequence(source->sequence) > sequence) {
-               panic("source %p, sequence = %lu (%lu)\n", source, 
source->sequence,
-                       sequence.Number());
+               panic("source %p, sequence = %" B_PRIu32 " (%" B_PRIu32 ")\n", 
source,
+                       source->sequence, sequence.Number());
        }
 
        // clone the data
@@ -481,8 +481,8 @@ BufferQueue::Dump() const
        SegmentList::ConstIterator iterator = fList.GetIterator();
        int32 number = 0;
        while (net_buffer* buffer = iterator.Next()) {
-               kprintf("      %ld. buffer %p, sequence %lu, size %lu\n", 
++number,
-                       buffer, buffer->sequence, buffer->size);
+               kprintf("      %" B_PRId32 ". buffer %p, sequence %" B_PRIu32 
", size %"
+                       B_PRIu32 "\n", ++number, buffer, buffer->sequence, 
buffer->size);
        }
 }
 
diff --git a/src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.cpp 
b/src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.cpp
index c2a37db..8c3fae3 100644
--- a/src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.cpp
+++ b/src/add-ons/kernel/network/protocols/tcp/TCPEndpoint.cpp
@@ -2330,45 +2330,50 @@ TCPEndpoint::Dump() const
 {
        kprintf("TCP endpoint %p\n", this);
        kprintf("  state: %s\n", name_for_state(fState));
-       kprintf("  flags: 0x%lx\n", fFlags);
+       kprintf("  flags: 0x%" B_PRIx32 "\n", fFlags);
 #if KDEBUG
-       kprintf("  lock: { %p, holder: %ld }\n", &fLock, fLock.holder);
+       kprintf("  lock: { %p, holder: %" B_PRId32 " }\n", &fLock, 
fLock.holder);
 #endif
-       kprintf("  accept sem: %ld\n", fAcceptSemaphore);
-       kprintf("  options: 0x%lx\n", (uint32)fOptions);
+       kprintf("  accept sem: %" B_PRId32 "\n", fAcceptSemaphore);
+       kprintf("  options: 0x%" B_PRIx32 "\n", (uint32)fOptions);
        kprintf("  send\n");
        kprintf("    window shift: %u\n", fSendWindowShift);
-       kprintf("    unacknowledged: %lu\n", fSendUnacknowledged.Number());
-       kprintf("    next: %lu\n", fSendNext.Number());
-       kprintf("    max: %lu\n", fSendMax.Number());
-       kprintf("    urgent offset: %lu\n", fSendUrgentOffset.Number());
-       kprintf("    window: %lu\n", fSendWindow);
-       kprintf("    max window: %lu\n", fSendMaxWindow);
-       kprintf("    max segment size: %lu\n", fSendMaxSegmentSize);
+       kprintf("    unacknowledged: %" B_PRIu32 "\n",
+               fSendUnacknowledged.Number());
+       kprintf("    next: %" B_PRIu32 "\n", fSendNext.Number());
+       kprintf("    max: %" B_PRIu32 "\n", fSendMax.Number());
+       kprintf("    urgent offset: %" B_PRIu32 "\n", 
fSendUrgentOffset.Number());
+       kprintf("    window: %" B_PRIu32 "\n", fSendWindow);
+       kprintf("    max window: %" B_PRIu32 "\n", fSendMaxWindow);
+       kprintf("    max segment size: %" B_PRIu32 "\n", fSendMaxSegmentSize);
        kprintf("    queue: %lu / %lu\n", fSendQueue.Used(), fSendQueue.Size());
 #if DEBUG_BUFFER_QUEUE
        fSendQueue.Dump();
 #endif
-       kprintf("    last acknowledge sent: %lu\n", 
fLastAcknowledgeSent.Number());
-       kprintf("    initial sequence: %lu\n", fInitialSendSequence.Number());
+       kprintf("    last acknowledge sent: %" B_PRIu32 "\n",
+               fLastAcknowledgeSent.Number());
+       kprintf("    initial sequence: %" B_PRIu32 "\n",
+               fInitialSendSequence.Number());
        kprintf("  receive\n");
        kprintf("    window shift: %u\n", fReceiveWindowShift);
-       kprintf("    next: %lu\n", fReceiveNext.Number());
-       kprintf("    max advertised: %lu\n", fReceiveMaxAdvertised.Number());
-       kprintf("    window: %lu\n", fReceiveWindow);
-       kprintf("    max segment size: %lu\n", fReceiveMaxSegmentSize);
+       kprintf("    next: %" B_PRIu32 "\n", fReceiveNext.Number());
+       kprintf("    max advertised: %" B_PRIu32 "\n",
+               fReceiveMaxAdvertised.Number());
+       kprintf("    window: %" B_PRIu32 "\n", fReceiveWindow);
+       kprintf("    max segment size: %" B_PRIu32 "\n", 
fReceiveMaxSegmentSize);
        kprintf("    queue: %lu / %lu\n", fReceiveQueue.Available(),
                fReceiveQueue.Size());
 #if DEBUG_BUFFER_QUEUE
        fReceiveQueue.Dump();
 #endif
-       kprintf("    initial sequence: %lu\n", 
fInitialReceiveSequence.Number());
-       kprintf("    duplicate acknowledge count: %lu\n",
+       kprintf("    initial sequence: %" B_PRIu32 "\n",
+               fInitialReceiveSequence.Number());
+       kprintf("    duplicate acknowledge count: %" B_PRIu32 "\n",
                fDuplicateAcknowledgeCount);
-       kprintf("  round trip time: %ld (deviation %ld)\n", fRoundTripTime,
-               fRoundTripDeviation);
-       kprintf("  retransmit timeout: %lld\n", fRetransmitTimeout);
-       kprintf("  congestion window: %lu\n", fCongestionWindow);
-       kprintf("  slow start threshold: %lu\n", fSlowStartThreshold);
+       kprintf("  round trip time: %" B_PRId32 " (deviation %" B_PRId32 ")\n",
+               fRoundTripTime, fRoundTripDeviation);
+       kprintf("  retransmit timeout: %" B_PRId64 "\n", fRetransmitTimeout);
+       kprintf("  congestion window: %" B_PRIu32 "\n", fCongestionWindow);
+       kprintf("  slow start threshold: %" B_PRIu32 "\n", fSlowStartThreshold);
 }
 
diff --git a/src/add-ons/kernel/network/protocols/udp/udp.cpp 
b/src/add-ons/kernel/network/protocols/udp/udp.cpp
index 78ef872..0e921ae 100644
--- a/src/add-ons/kernel/network/protocols/udp/udp.cpp
+++ b/src/add-ons/kernel/network/protocols/udp/udp.cpp
@@ -739,7 +739,7 @@ UdpEndpointManager::ReceiveError(status_t error, 
net_buffer* buffer)
        // original packet
        udp_header header;
        if (gBufferModule->read(buffer, 0, &header,
-                       std::min(buffer->size, sizeof(udp_header))) != B_OK)
+                       std::min((size_t)buffer->size, sizeof(udp_header))) != 
B_OK)
                return B_BAD_VALUE;
 
        net_domain* domain = buffer->interface_address->domain;
diff --git a/src/add-ons/kernel/network/protocols/unix/UnixAddress.cpp 
b/src/add-ons/kernel/network/protocols/unix/UnixAddress.cpp
index d92e285..9a3154a 100644
--- a/src/add-ons/kernel/network/protocols/unix/UnixAddress.cpp
+++ b/src/add-ons/kernel/network/protocols/unix/UnixAddress.cpp
@@ -30,9 +30,11 @@ UnixAddress::ToString(char *buffer, size_t bufferSize) const
        if (!IsValid())
                strlcpy(buffer, "<empty>", bufferSize);
        else if (IsInternalAddress())
-               snprintf(buffer, bufferSize, "<%05lx>", fInternalID);
-       else
-               snprintf(buffer, bufferSize, "<%ld, %lld>", fVolumeID, fNodeID);
+               snprintf(buffer, bufferSize, "<%05" B_PRIx32 ">", fInternalID);
+       else {
+               snprintf(buffer, bufferSize, "<%" B_PRIdDEV ", %" B_PRIdINO ">",
+                       fVolumeID, fNodeID);
+       }
 
        return buffer;
 }
diff --git a/src/add-ons/kernel/network/protocols/unix/UnixEndpoint.cpp 
b/src/add-ons/kernel/network/protocols/unix/UnixEndpoint.cpp
index fff75d0..b2d12b5 100644
--- a/src/add-ons/kernel/network/protocols/unix/UnixEndpoint.cpp
+++ b/src/add-ons/kernel/network/protocols/unix/UnixEndpoint.cpp
@@ -182,7 +182,7 @@ UnixEndpoint::Bind(const struct sockaddr *_address)
 
                sockaddr_un* outAddress = (sockaddr_un*)&socket->address;
                outAddress->sun_path[0] = '\0';
-               sprintf(outAddress->sun_path + 1, "%05lx", internalID);
+               sprintf(outAddress->sun_path + 1, "%05" B_PRIx32, internalID);
                outAddress->sun_len = INTERNAL_UNIX_ADDRESS_LEN;
                        // null-byte + 5 hex digits
 
diff --git a/src/add-ons/kernel/network/protocols/unix/UnixFifo.cpp 
b/src/add-ons/kernel/network/protocols/unix/UnixFifo.cpp
index 579553c..22159f9 100644
--- a/src/add-ons/kernel/network/protocols/unix/UnixFifo.cpp
+++ b/src/add-ons/kernel/network/protocols/unix/UnixFifo.cpp
@@ -399,7 +399,7 @@ size_t
 UnixFifo::Readable() const
 {
        size_t readable = fBuffer.Readable();
-       return readable > fReadRequested ? readable - fReadRequested : 0;
+       return (off_t)readable > fReadRequested ? readable - fReadRequested : 0;
 }
 
 
@@ -407,7 +407,7 @@ size_t
 UnixFifo::Writable() const
 {
        size_t writable = fBuffer.Writable();
-       return writable > fWriteRequested ? writable - fWriteRequested : 0;
+       return (off_t)writable > fWriteRequested ? writable - fWriteRequested : 
0;
 }
 
 
diff --git a/src/add-ons/kernel/network/stack/device_interfaces.cpp 
b/src/add-ons/kernel/network/stack/device_interfaces.cpp
index 3d2db52..cce93f6 100644
--- a/src/add-ons/kernel/network/stack/device_interfaces.cpp
+++ b/src/add-ons/kernel/network/stack/device_interfaces.cpp
@@ -241,12 +241,12 @@ dump_device_interface(int argc, char** argv)
                = (net_device_interface*)parse_expression(argv[1]);
 
        kprintf("device:            %p\n", interface->device);
-       kprintf("reader_thread:     %ld\n", interface->reader_thread);
+       kprintf("reader_thread:     %" B_PRId32 "\n", interface->reader_thread);
        kprintf("up_count:          %" B_PRIu32 "\n", interface->up_count);
        kprintf("ref_count:         %" B_PRId32 "\n", interface->ref_count);
        kprintf("deframe_func:      %p\n", interface->deframe_func);
        kprintf("deframe_ref_count: %" B_PRId32 "\n", interface->ref_count);
-       kprintf("consumer_thread:   %ld\n", interface->consumer_thread);
+       kprintf("consumer_thread:   %" B_PRId32 "\n", 
interface->consumer_thread);
 
        kprintf("monitor_count:     %" B_PRId32 "\n", interface->monitor_count);
        kprintf("monitor_lock:      %p\n", &interface->monitor_lock);
diff --git a/src/add-ons/kernel/network/stack/domains.cpp 
b/src/add-ons/kernel/network/stack/domains.cpp
index b331172..0c581e9 100644
--- a/src/add-ons/kernel/network/stack/domains.cpp
+++ b/src/add-ons/kernel/network/stack/domains.cpp
@@ -77,8 +77,8 @@ dump_domains(int argc, char** argv)
        
                RouteList::Iterator routeIterator = 
domain->routes.GetIterator();
                while (net_route_private* route = routeIterator.Next()) {
-                       kprintf("    %p: dest %s, mask %s, gw %s, flags %lx, 
address %p\n",
-                               route, AddressString(domain, route->destination
+                       kprintf("    %p: dest %s, mask %s, gw %s, flags %" 
B_PRIx32 ", "
+                               "address %p\n", route, AddressString(domain, 
route->destination
                                        ? route->destination : NULL).Data(),
                                AddressString(domain, route->mask ? route->mask 
: NULL).Data(),
                                AddressString(domain, route->gateway
diff --git a/src/add-ons/kernel/network/stack/interfaces.cpp 
b/src/add-ons/kernel/network/stack/interfaces.cpp
index 96ed208..9a3c73b 100644
--- a/src/add-ons/kernel/network/stack/interfaces.cpp
+++ b/src/add-ons/kernel/network/stack/interfaces.cpp
@@ -148,7 +148,7 @@ dump_local(int argc, char** argv)
        size_t i = 0;
        while (InterfaceAddress* address = iterator.Next()) {
                address->Dump(++i);
-               dprintf("    hash:          %lu\n",
+               dprintf("    hash:          %" B_PRIu32 "\n",
                        
address->domain->address_module->hash_address(address->local,
                                false));
        }
diff --git a/src/add-ons/kernel/network/stack/net_buffer.cpp 
b/src/add-ons/kernel/network/stack/net_buffer.cpp
index 8f7a893..d302c6a 100644
--- a/src/add-ons/kernel/network/stack/net_buffer.cpp
+++ b/src/add-ons/kernel/network/stack/net_buffer.cpp
@@ -610,7 +610,7 @@ dump_buffer(net_buffer* _buffer)
        net_buffer_private* buffer = (net_buffer_private*)_buffer;
 
        dprintf("buffer %p, size %" B_PRIu32 ", flags %" B_PRIx32 ", stored 
header "
-               "%" B_PRIu32 ", interface address %p\n", buffer, buffer->size,
+               "%" B_PRIuSIZE ", interface address %p\n", buffer, buffer->size,
                buffer->flags, buffer->stored_header_length, 
buffer->interface_address);
 
        dump_address("source", buffer->source, buffer->interface_address);
@@ -652,11 +652,11 @@ dump_net_buffer(int argc, char** argv)
 static int
 dump_net_buffer_stats(int argc, char** argv)
 {
-       kprintf("allocated data headers: %7ld / %7ld, peak %7ld\n",
-               sAllocatedDataHeaderCount, sEverAllocatedDataHeaderCount,
+       kprintf("allocated data headers: %7" B_PRId32 " / %7" B_PRId32 ", peak 
%7"
+               B_PRId32 "\n", sAllocatedDataHeaderCount, 
sEverAllocatedDataHeaderCount,
                sMaxAllocatedDataHeaderCount);
-       kprintf("allocated net buffers:  %7ld / %7ld, peak %7ld\n",
-               sAllocatedNetBufferCount, sEverAllocatedNetBufferCount,
+       kprintf("allocated net buffers:  %7" B_PRId32 " / %7" B_PRId32 ", peak 
%7"
+               B_PRId32 "\n", sAllocatedNetBufferCount, 
sEverAllocatedNetBufferCount,
                sMaxAllocatedNetBufferCount);
        return 0;
 }
diff --git a/src/add-ons/kernel/network/stack/net_socket.cpp 
b/src/add-ons/kernel/network/stack/net_socket.cpp
index 7346769..9d5cfc9 100644
--- a/src/add-ons/kernel/network/stack/net_socket.cpp
+++ b/src/add-ons/kernel/network/stack/net_socket.cpp
@@ -341,7 +341,7 @@ static void
 print_socket_line(net_socket_private* socket, const char* prefix)
 {
        BReference<net_socket_private> parent = socket->parent.GetReference();
-       kprintf("%s%p %2d.%2d.%2d %6ld %p %p  %p%s\n", prefix, socket,
+       kprintf("%s%p %2d.%2d.%2d %6" B_PRId32 " %p %p  %p%s\n", prefix, socket,
                socket->family, socket->type, socket->protocol, socket->owner,
                socket->first_protocol, socket->first_info, parent.Get(),
                parent.Get() != NULL ? socket->is_connected ? " (c)" : " (p)" : 
"");
@@ -368,10 +368,10 @@ dump_socket(int argc, char** argv)
        kprintf("  options:              %x\n", socket->options);
        kprintf("  linger:               %d\n", socket->linger);
        kprintf("  bound to device:      %" B_PRIu32 "\n", 
socket->bound_to_device);
-       kprintf("  owner:                %ld\n", socket->owner);
-       kprintf("  max backlog:          %ld\n", socket->max_backlog);
+       kprintf("  owner:                %" B_PRId32 "\n", socket->owner);
+       kprintf("  max backlog:          %" B_PRId32 "\n", socket->max_backlog);
        kprintf("  is connected:         %d\n", socket->is_connected);
-       kprintf("  child_count:          %lu\n", socket->child_count);
+       kprintf("  child_count:          %" B_PRIu32 "\n", socket->child_count);
 
        if (socket->child_count == 0)
                return 0;
diff --git a/src/add-ons/kernel/network/stack/stack.cpp 
b/src/add-ons/kernel/network/stack/stack.cpp
index 7084468..4b2a0a1 100644
--- a/src/add-ons/kernel/network/stack/stack.cpp
+++ b/src/add-ons/kernel/network/stack/stack.cpp
@@ -146,7 +146,7 @@ family::Release()
 family::Compare(void* _family, const void* _key)
 {
        struct family* family = (struct family*)_family;
-       int key = (int)_key;
+       int key = (addr_t)_key;
 
        if (family->type == key)
                return 0;
@@ -159,7 +159,7 @@ family::Compare(void* _family, const void* _key)
 family::Hash(void* _family, const void* _key, uint32 range)
 {
        struct family* family = (struct family*)_family;
-       int key = (int)_key;
+       int key = (addr_t)_key;
 
        if (family != NULL)
                return family->type % range;
@@ -171,7 +171,7 @@ family::Hash(void* _family, const void* _key, uint32 range)
 /*static*/ struct family*
 family::Lookup(int type)
 {
-       return (struct family*)hash_lookup(sFamilies, (void*)type);
+       return (struct family*)hash_lookup(sFamilies, (void*)(addr_t)type);
 }
 
 
diff --git a/src/add-ons/kernel/network/stack/utility.cpp 
b/src/add-ons/kernel/network/stack/utility.cpp
index f31656d..02d265e 100644
--- a/src/add-ons/kernel/network/stack/utility.cpp
+++ b/src/add-ons/kernel/network/stack/utility.cpp
@@ -312,7 +312,7 @@ Fifo::Dequeue(bool clone)
 }
 
 
-ssize_t
+status_t
 Fifo::Clear()
 {
        return base_fifo_clear(this);
@@ -632,7 +632,7 @@ dump_timer(int argc, char** argv)
                if (timer == NULL)
                        break;
 
-               kprintf("%p  %p  %p  %Ld\n", timer, timer->hook, timer->data,
+               kprintf("%p  %p  %p  %" B_PRId64 "\n", timer, timer->hook, 
timer->data,
                        timer->due > 0 ? timer->due - system_time() : -1);
        }
 
diff --git a/src/libs/compat/freebsd_network/bus.cpp 
b/src/libs/compat/freebsd_network/bus.cpp
index edd40af..bc89fe8 100644
--- a/src/libs/compat/freebsd_network/bus.cpp
+++ b/src/libs/compat/freebsd_network/bus.cpp
@@ -152,7 +152,7 @@ bus_alloc_resource(device_t dev, int type, int *rid, 
unsigned long start,
                return NULL;
 
        device_printf(dev, "bus_alloc_resource(%i, [%i], 0x%lx, 0x%lx, 0x%lx,"
-               "0x%lx)\n", type, *rid, start, end, count, flags);
+               "0x%" B_PRIx32 ")\n", type, *rid, start, end, count, flags);
 
        // maybe a local array of resources is enough
        res = (struct resource *)malloc(sizeof(struct resource));
diff --git a/src/libs/compat/freebsd_network/compat.c 
b/src/libs/compat/freebsd_network/compat.c
index caa8c0e..f17eb59 100644
--- a/src/libs/compat/freebsd_network/compat.c
+++ b/src/libs/compat/freebsd_network/compat.c
@@ -74,9 +74,9 @@ find_own_image()
        int32 cookie = 0;
        image_info info;
        while (get_next_image_info(B_SYSTEM_TEAM, &cookie, &info) == B_OK) {
-               if (((uint32)info.text <= (uint32)find_own_image
-                       && (uint32)info.text + (uint32)info.text_size
-                               > (uint32)find_own_image)) {
+               if (((addr_t)info.text <= (addr_t)find_own_image
+                       && (addr_t)info.text + (addr_t)info.text_size
+                               > (addr_t)find_own_image)) {
                        // found our own image
                        return info.id;
                }
@@ -635,8 +635,8 @@ pmap_kextract(vm_offset_t virtualAddress)
        physical_entry entry;
        status_t status = get_memory_map((void *)virtualAddress, 1, &entry, 1);
        if (status < B_OK) {
-               panic("fbsd compat: get_memory_map failed for %p, error 
%08lx\n",
-                       (void *)virtualAddress, status);
+               panic("fbsd compat: get_memory_map failed for %p, error %08" 
B_PRIx32
+                       "\n", (void *)virtualAddress, status);
        }
 
        return (vm_paddr_t)entry.address;
diff --git a/src/libs/compat/freebsd_network/compat/machine/_bus.h 
b/src/libs/compat/freebsd_network/compat/machine/_bus.h
index acdd148..a4b9025 100644
--- a/src/libs/compat/freebsd_network/compat/machine/_bus.h
+++ b/src/libs/compat/freebsd_network/compat/machine/_bus.h
@@ -7,10 +7,26 @@
 #define _FBSD_COMPAT_MACHINE__BUS_H_
 
 
+#ifdef B_HAIKU_64_BIT
+
+
+typedef uint64_t bus_addr_t;
+typedef uint64_t bus_size_t;
+
+typedef uint64_t bus_space_tag_t;
+typedef uint64_t bus_space_handle_t;
+
+
+#else
+
+
 typedef uint32_t bus_addr_t;
 typedef uint32_t bus_size_t;
 
 typedef int bus_space_tag_t;
 typedef unsigned int bus_space_handle_t;
 
+
+#endif
+
 #endif /* _FBSD_COMPAT_MACHINE__BUS_H_ */
diff --git a/src/libs/compat/freebsd_network/compat/machine/bus.h 
b/src/libs/compat/freebsd_network/compat/machine/bus.h
index 10f549f..717f895 100644
--- a/src/libs/compat/freebsd_network/compat/machine/bus.h
+++ b/src/libs/compat/freebsd_network/compat/machine/bus.h
@@ -120,7 +120,11 @@
 #define I386_BUS_SPACE_MEM                     1
 
 #define BUS_SPACE_MAXADDR_32BIT                0xffffffff
-#define BUS_SPACE_MAXADDR                      0xffffffff
+#ifdef __x86_64__
+#      define BUS_SPACE_MAXADDR                0xffffffffffffffffull
+#else
+#      define BUS_SPACE_MAXADDR                0xffffffff
+#endif
 
 #define BUS_SPACE_MAXSIZE_32BIT                0xffffffff
 #define BUS_SPACE_MAXSIZE                      0xffffffff
diff --git a/src/libs/compat/freebsd_network/compat/vm/vm.h 
b/src/libs/compat/freebsd_network/compat/vm/vm.h
index 9824265..56eef91 100644
--- a/src/libs/compat/freebsd_network/compat/vm/vm.h
+++ b/src/libs/compat/freebsd_network/compat/vm/vm.h
@@ -10,11 +10,18 @@
 #include <KernelExport.h>
 
 
-// TODO at the moment for 32 bit machines only
+#ifdef B_HAIKU_64_BIT
+
+typedef uint64_t vm_offset_t;
+typedef uint64_t vm_paddr_t;
+
+#else
 
 typedef uint32_t vm_offset_t;
 typedef uint32_t vm_paddr_t;
 
+#endif
+
 typedef void *pmap_t;
 
 
diff --git a/src/libs/compat/freebsd_network/device.c 
b/src/libs/compat/freebsd_network/device.c
index c9a435c..2e7fb31 100644
--- a/src/libs/compat/freebsd_network/device.c
+++ b/src/libs/compat/freebsd_network/device.c
@@ -41,7 +41,7 @@ compat_open(const char *name, uint32 flags, void **cookie)
                return B_ERROR;
 
        ifp = gDevices[i];
-       if_printf(ifp, "compat_open(0x%lx)\n", flags);
+       if_printf(ifp, "compat_open(0x%" B_PRIx32 ")\n", flags);
 
        if (atomic_or(&ifp->open_count, 1)) {
                put_module(NET_STACK_MODULE_NAME);
diff --git a/src/libs/compat/freebsd_network/fbsd_busdma_x86.c 
b/src/libs/compat/freebsd_network/fbsd_busdma_x86.c
index 7c26791..67f3a49 100644
--- a/src/libs/compat/freebsd_network/fbsd_busdma_x86.c
+++ b/src/libs/compat/freebsd_network/fbsd_busdma_x86.c
@@ -43,7 +43,11 @@ __FBSDID("$FreeBSD: src/sys/i386/i386/busdma_machdep.c,v 
1.74.2.4 2006/10/21 16:
 #include <machine/atomic.h>
 #include <machine/bus.h>
 
-#define MAX_BPAGES 512
+#ifdef __x86_64__
+#      define MAX_BPAGES 8192
+#else
+#      define MAX_BPAGES 512
+#endif
 
 /* -hugo */
 #define malloc(a, b, c)                                                
kernel_malloc(a, b, c)
@@ -60,7 +64,7 @@ struct bounce_zone;
 struct bus_dma_tag {
        bus_dma_tag_t     parent;
        bus_size_t        alignment;
-       bus_size_t        boundary;
+       bus_addr_t        boundary;
        bus_addr_t        lowaddr;
        bus_addr_t        highaddr;
        bus_dma_filter_t *filter;
@@ -97,7 +101,7 @@ struct bounce_zone {
        int             total_bounced;
        int             total_deferred;
        bus_size_t      alignment;
-       bus_size_t      boundary;
+       bus_addr_t      boundary;
        bus_addr_t      lowaddr;
        char            zoneid[8];
        char            lowaddrid[20];
diff --git a/src/servers/net/Services.cpp b/src/servers/net/Services.cpp
index 7b15ea4..95ea5bd 100644
--- a/src/servers/net/Services.cpp
+++ b/src/servers/net/Services.cpp
@@ -341,7 +341,7 @@ Services::_StopService(struct service& service)
 
        // Shutdown the running server, if any
        if (service.process != -1) {
-               printf("  Sending SIGTERM to process %ld\n", service.process);
+               printf("  Sending SIGTERM to process %" B_PRId32 "\n", 
service.process);
                kill(-service.process, SIGTERM);
        }
 


Other related posts:

  • » [haiku-commits] BRANCH xyzzy-github.x86_64 - src/add-ons/kernel/network/protocols/tcp src/add-ons/kernel/network/stack build/jam src/add-ons/kernel/drivers/network/sis19x src/add-ons/kernel/drivers/network/pegasus - xyzzy-github . x86_64